From 72f609f77cd59b074ff8b77f7161fcb89bdba4eb Mon Sep 17 00:00:00 2001 From: koka Date: Thu, 10 Sep 2026 14:45:33 +0200 Subject: [PATCH] release: integrate PR #176 in alpha.244 --- CHANGELOG.md | 10 + README.md | 4 +- build.gradle | 598 +++++++++++------- gradle.properties | 4 +- ...alpha.243-skin-fireworks-to-alpha.244.json | 62 ++ pack/packwiz/index.toml | 4 +- pack/packwiz/pack.toml | 4 +- pack/prism/modrinth.index.json | 2 +- pack/release.json | 4 +- 9 files changed, 454 insertions(+), 238 deletions(-) create mode 100644 pack/migrations/26.2.0-alpha.243-skin-fireworks-to-alpha.244.json diff --git a/CHANGELOG.md b/CHANGELOG.md index e7ab9ad..b6497e4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,16 @@ Ce journal suit les **versions du modpack**. Lorsqu'un seul module change, sa ve Aucun changement non publié. +## `26.2.0-alpha.244` + +Pull request intégrée : [#176](https://git.botsu.net/koka/sanctuary/pulls/176). + +- ajoute huit feux d’artifice à portraits : ChrisM, Kaninscheun, Poupoutain, lBeast, CreveForest, SacDChips, Vaselline et Duncan ; +- dessine pour chacun un visage 8×8 et sa capuche en particules orientées vers le joueur, en taille normale ou agrandie ; +- ajoute les huit recettes sans forme, les objets, les textures et les traductions EN/FR/RU correspondantes ; +- conserve le feu d’artifice Nourra et son identifiant existant ; +- conserve les sauvegardes, les données OnlyFun v2 et le protocole réseau 3 ; OnlyFun passe à `0.0.0-alpha.29`. + ## `26.2.0-alpha.243` Pull requests intégrées : [#172](https://git.botsu.net/koka/sanctuary/pulls/172), [#173](https://git.botsu.net/koka/sanctuary/pulls/173) et [#174](https://git.botsu.net/koka/sanctuary/pulls/174). diff --git a/README.md b/README.md index c188f13..8853d9f 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,9 @@ Licence : **GNU GPL 3.0 or Later** (`GPL-3.0-or-later`) Les descriptions FR/EN/RU sont déclarées dans chaque `fabric.mod.json` et dans les fichiers de langue. Les images fournies servent d'icônes Fabric de leur module. -Version courante du pack distribué : **`26.2.0-alpha.243`**. Cette release conserve les dix modules Sanctuary, notamment Another World **`0.0.0-alpha.58`**, Sanctuary **`0.0.0-alpha.140`**, OnlyFun **`0.0.0-alpha.28`** et Red-Stoner **`0.0.0-alpha.20`**, garde ZEVENT entièrement retiré et met à jour MyDisplay **`1.0.0`** vers le quatrième build fourni, avec WaterMedia **`3.0.0.23`** et WaterMedia Binaries **`3.0.0.6`**. +Version courante du pack distribué : **`26.2.0-alpha.244`**. Cette release conserve les dix modules Sanctuary, notamment Another World **`0.0.0-alpha.58`**, Sanctuary **`0.0.0-alpha.140`**, OnlyFun **`0.0.0-alpha.29`** et Red-Stoner **`0.0.0-alpha.20`**, garde ZEVENT entièrement retiré et met à jour MyDisplay **`1.0.0`** vers le quatrième build fourni, avec WaterMedia **`3.0.0.23`** et WaterMedia Binaries **`3.0.0.6`**. + +L’alpha.244 intègre la PR #176. OnlyFun ajoute huit feux d’artifice à portraits pour ChrisM, Kaninscheun, Poupoutain, lBeast, CreveForest, SacDChips, Vaselline et Duncan. Chaque explosion reproduit le visage et la capuche de son skin en particules orientées vers le joueur, en taille normale ou agrandie. Les recettes, objets, textures et traductions EN/FR/RU sont inclus, tandis que Nourra, les sauvegardes et le protocole restent compatibles. L’alpha.243 intègre les PR #172, #173 et #174. Le catalogue du Shop gagne une recherche tolérante aux accents, des grilles 3×3, 4×4 et 5×5 mémorisées ainsi qu’un compteur de pages, sans modifier les ventes flash. Les panneaux de quêtes resynchronisent leur texte après une rotation hors chunk et les rafraîchissements opérateur produisent bien un nouveau contrat. OnlyFun ajoute enfin le feu d’artifice Nourra, dont l’explosion dessine le visage et la capuche du skin en particules. Les sauvegardes et protocoles restent compatibles. diff --git a/build.gradle b/build.gradle index 1082b8c..8a0bbdd 100644 --- a/build.gradle +++ b/build.gradle @@ -2921,7 +2921,7 @@ tasks.register("verifyNotchEncounter") { || rootProject.ouch_version != "0.0.0-alpha.11" || rootProject.sanctuary_version != "0.0.0-alpha.140" || rootProject.masterkey_version != "0.0.0-alpha.9" - || rootProject.pack_version != "26.2.0-alpha.243" + || rootProject.pack_version != "26.2.0-alpha.244" || manifests.itsalive.custom?.sanctuary26?.data_version != 4 || manifests.sanctuary.custom?.sanctuary26?.data_version != 15 || manifests.ouch.depends?.itsalive != ">=0.0.0-alpha.37" @@ -3010,9 +3010,9 @@ tasks.register("verifyMagicCarpet") { "iliketomoveit/src/main/resources/assets/iliketomoveit/models/item/magic_carpet.json")) def carpetTexture = file( "iliketomoveit/src/main/resources/assets/iliketomoveit/textures/item/magic_carpet.png") - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.iliketomoveit_version != "0.0.0-alpha.18" - || rootProject.onlyfun_version != "0.0.0-alpha.28" + || rootProject.onlyfun_version != "0.0.0-alpha.29" || rootProject.sanctuary_version != "0.0.0-alpha.140" || manifests.iliketomoveit.custom?.sanctuary26?.data_version != 4 || manifests.iliketomoveit.custom?.sanctuary26?.network_protocol != 5 @@ -3643,9 +3643,9 @@ tasks.register("verifyProgressivePauseMenuRelease") { [(locale): new JsonSlurper().parse(file( "sanctuary/src/main/resources/assets/sanctuary/lang/${locale}.json"))] } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.sanctuary_version != "0.0.0-alpha.140" - || rootProject.onlyfun_version != "0.0.0-alpha.28" + || rootProject.onlyfun_version != "0.0.0-alpha.29" || release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version || migration.source?.modules != [sanctuary: "0.0.0-alpha.108", onlyfun: "0.0.0-alpha.17"] || migration.target?.modules != [sanctuary: "0.0.0-alpha.109", onlyfun: "0.0.0-alpha.17"] @@ -3693,7 +3693,7 @@ tasks.register("verifyMirrorLavenderDrawerRelease") { def redStonerRegistry = file( "redstoner/src/main/java/fr/koka99cab/sanctuary26/redstoner/registry/RedStonerRegistries.java").text def drawerRecipe = file("redstoner/src/main/resources/data/redstoner/recipe/drawer.json") - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.anotherworld_version != "0.0.0-alpha.58" || rootProject.redstoner_version != "0.0.0-alpha.20" || release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version @@ -3960,7 +3960,7 @@ project(":onlyfun") { def shitCubeRecipe = new JsonSlurper().parse(file( "src/main/resources/data/abjection/recipe/shit_cube.json")) if (manifest.custom.sanctuary26.data_version != 2 - || project.version.toString() != "0.0.0-alpha.28" + || project.version.toString() != "0.0.0-alpha.29" || manifest.depends?.sanctuary != ">=0.0.0-alpha.129" || manifest.depends?.iliketomoveit != ">=0.0.0-alpha.17" || manifest.provides != ["abjection"] @@ -4721,8 +4721,8 @@ tasks.register("verifyShopPricingLayoutRelease") { "pack/migrations/26.2.0-alpha.192-shop-pricing-layout-to-alpha.193.json")) def release = new JsonSlurper().parse(file("pack/release.json")) def index = new JsonSlurper().parse(file("pack/prism/modrinth.index.json")) - if (rootProject.pack_version != "26.2.0-alpha.243" - || rootProject.onlyfun_version != "0.0.0-alpha.28" + if (rootProject.pack_version != "26.2.0-alpha.244" + || rootProject.onlyfun_version != "0.0.0-alpha.29" || rootProject.sanctuary_version != "0.0.0-alpha.140" || release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version || migration.source?.pack_version != "26.2.0-alpha.192" @@ -4766,7 +4766,7 @@ tasks.register("verifyCuisineCropsRelease") { def climate = file("itsalive/src/main/java/fr/koka99cab/sanctuary26/itsalive/agriculture/ClimateCropForaging.java").text def rice = file("itsalive/src/main/java/fr/koka99cab/sanctuary26/itsalive/agriculture/RiceCropBlock.java").text def bean = file("itsalive/src/main/java/fr/koka99cab/sanctuary26/itsalive/agriculture/BeanCropBlock.java").text - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.itsalive_version != "0.0.0-alpha.38" || release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version || migration.source?.pack_version != "26.2.0-alpha.193" @@ -4815,8 +4815,8 @@ tasks.register("verifyShopCsvBossGatesRelease") { def bossGate = file("onlyfun/src/main/java/fr/koka99cab/sanctuary26/onlyfun/shop/OnlyFunBossShopGate.java").text def catalog = file("onlyfun/src/main/java/fr/koka99cab/sanctuary26/onlyfun/shop/OnlyFunShopCatalog.java").text def offerCatalog = file("sanctuary/src/main/java/fr/koka99cab/sanctuary26/sanctuary/shop/ShopOfferCatalog.java").text - if (rootProject.pack_version != "26.2.0-alpha.243" - || rootProject.onlyfun_version != "0.0.0-alpha.28" + if (rootProject.pack_version != "26.2.0-alpha.244" + || rootProject.onlyfun_version != "0.0.0-alpha.29" || rootProject.sanctuary_version != "0.0.0-alpha.140" || release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version || migration.source?.pack_version != "26.2.0-alpha.194" @@ -4862,7 +4862,7 @@ tasks.register("verifyCulinaryMailboxGrappleFixesRelease") { def release = new JsonSlurper().parse(file("pack/release.json")) def prism = new JsonSlurper().parse(file("pack/prism/modrinth.index.json")) def packwiz = file("pack/packwiz/pack.toml").text - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || migration.source?.pack_version != "26.2.0-alpha.195" || migration.target?.pack_version != "26.2.0-alpha.196" || migration.target?.modules != [ @@ -4880,10 +4880,10 @@ tasks.register("verifyCulinaryMailboxGrappleFixesRelease") { || migration.distribution?.jei?.target != "30.26.0.182" || migration.compatibility?.save_migration_required != false || migration.compatibility?.registry_ids_changed != false - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"')) { + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"')) { throw new GradleException("The alpha.196 culinary, mailbox and grapple release contract is incomplete") } } @@ -4908,7 +4908,7 @@ tasks.register("verifyQuestRequestsCauldronBatchesRelease") { def prism = new JsonSlurper().parse(file("pack/prism/modrinth.index.json")) def packwiz = file("pack/packwiz/pack.toml").text def sanctuaryManifest = new JsonSlurper().parse(file("sanctuary/src/main/resources/fabric.mod.json")) - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.itsalive_version != "0.0.0-alpha.38" || rootProject.sanctuary_version != "0.0.0-alpha.140" || migration.source?.pack_version != "26.2.0-alpha.196" @@ -4928,10 +4928,10 @@ tasks.register("verifyQuestRequestsCauldronBatchesRelease") { || migration.distribution?.jei?.target != "30.26.0.186" || migration.compatibility?.sanctuary_target_network_protocol != 19 || sanctuaryManifest.custom?.sanctuary26?.network_protocol != 24 - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"')) { + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"')) { throw new GradleException("The alpha.197 quest-request and cauldron-batch release contract is incomplete") } } @@ -4958,7 +4958,7 @@ tasks.register("verifyFermentationBarrelAutomationRelease") { def packwiz = file("pack/packwiz/pack.toml").text def packwizIndex = file("pack/packwiz/index.toml").text def itsAliveManifest = new JsonSlurper().parse(file("itsalive/src/main/resources/fabric.mod.json")) - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.itsalive_version != "0.0.0-alpha.38" || migration.source?.pack_version != "26.2.0-alpha.197" || migration.target?.pack_version != "26.2.0-alpha.198" @@ -4977,10 +4977,10 @@ tasks.register("verifyFermentationBarrelAutomationRelease") { || migration.distribution?.packwiz_index_refreshed != true || itsAliveManifest.custom?.sanctuary26?.data_version != 4 || itsAliveManifest.custom?.sanctuary26?.network_protocol != 4 - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"') + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.38.jar"')) { throw new GradleException("The alpha.198 fermentation barrel release contract is incomplete") } @@ -5008,7 +5008,7 @@ tasks.register("verifyQuestRequestContractsRelease") { def packwiz = file("pack/packwiz/pack.toml").text def packwizIndex = file("pack/packwiz/index.toml").text def sanctuaryManifest = new JsonSlurper().parse(file("sanctuary/src/main/resources/fabric.mod.json")) - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.itsalive_version != "0.0.0-alpha.38" || rootProject.sanctuary_version != "0.0.0-alpha.140" || migration.source?.pack_version != "26.2.0-alpha.198" @@ -5022,10 +5022,10 @@ tasks.register("verifyQuestRequestContractsRelease") { || migration.quest_request_contracts?.chat_accept_revalidates_distance_owner_sign_and_claim != true || migration.compatibility?.sanctuary_target_network_protocol != 20 || sanctuaryManifest.custom?.sanctuary26?.network_protocol != 24 - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"') + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.38.jar"') || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.140.jar"')) { throw new GradleException("The alpha.199 quest-request contract release is incomplete") @@ -5063,7 +5063,7 @@ tasks.register("verifyWeatherTntAmbianceRelease") { def ambianceManifest = new JsonSlurper().parse(file("ambiance/src/main/resources/fabric.mod.json")) def ouchManifest = new JsonSlurper().parse(file("ouch/src/main/resources/fabric.mod.json")) def rootBuild = file("build.gradle").text - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.ambiance_version != "0.0.0-alpha.22" || rootProject.ouch_version != "0.0.0-alpha.11" || migration.source?.pack_version != "26.2.0-alpha.199" @@ -5097,10 +5097,10 @@ tasks.register("verifyWeatherTntAmbianceRelease") { || !weatherTnt.contains("AmbianceDailyWeather.CLEAR") || !weatherTnt.contains("CLEAR_WEATHER_TICKS = 864_000") || weatherTnt.contains("setWeatherParameters") - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"') + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || !packwizIndex.contains('file = "mods/ouch-0.0.0-alpha.11.jar"')) { throw new GradleException("The alpha.200 Weather TNT and Ambiance release is incomplete") @@ -5129,7 +5129,7 @@ tasks.register("verifyQuestRequestEscrowRelease") { def packwiz = file("pack/packwiz/pack.toml").text def packwizIndex = file("pack/packwiz/index.toml").text def sanctuaryManifest = new JsonSlurper().parse(file("sanctuary/src/main/resources/fabric.mod.json")) - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.sanctuary_version != "0.0.0-alpha.140" || migration.source?.pack_version != "26.2.0-alpha.200" || migration.source?.modules?.sanctuary != "0.0.0-alpha.115" @@ -5144,10 +5144,10 @@ tasks.register("verifyQuestRequestEscrowRelease") { || migration.compatibility?.sanctuary_target_network_protocol != 21 || sanctuaryManifest.custom?.sanctuary26?.data_version != 15 || sanctuaryManifest.custom?.sanctuary26?.network_protocol != 24 - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"') + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.140.jar"')) { throw new GradleException("The alpha.201 quest-request escrow release is incomplete") } @@ -5183,7 +5183,7 @@ tasks.register("verifyWaystoneShopCulinaryAlpha202Release") { "iliketomoveit/src/main/resources/fabric.mod.json")) def sanctuaryManifest = new JsonSlurper().parse(file( "sanctuary/src/main/resources/fabric.mod.json")) - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.anotherworld_version != "0.0.0-alpha.58" || rootProject.itsalive_version != "0.0.0-alpha.38" || rootProject.iliketomoveit_version != "0.0.0-alpha.18" @@ -5223,10 +5223,10 @@ tasks.register("verifyWaystoneShopCulinaryAlpha202Release") { || moveItManifest.custom?.sanctuary26?.network_protocol != 5 || sanctuaryManifest.custom?.sanctuary26?.data_version != 15 || sanctuaryManifest.custom?.sanctuary26?.network_protocol != 24 - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"') + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.58.jar"') || !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.38.jar"') || !packwizIndex.contains('file = "mods/iliketomoveit-0.0.0-alpha.18.jar"') @@ -5343,7 +5343,7 @@ tasks.register("verifySafeVaultFeature") { def image = javax.imageio.ImageIO.read(file("anotherworld/src/main/resources/assets/anotherworld/textures/${path}")) image == null || image.width != size[0] || image.height != size[1] }.keySet() - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.anotherworld_version != "0.0.0-alpha.58" || rootProject.sanctuary_version != "0.0.0-alpha.140" || migration.schema_version != 1 @@ -5535,7 +5535,7 @@ tasks.register("verifySafeVaultInterfaceAlpha203Release") { def packwiz = file("pack/packwiz/pack.toml").text def packwizIndex = file("pack/packwiz/index.toml").text def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.anotherworld_version != "0.0.0-alpha.58" || migration.source?.pack_version != "26.2.0-alpha.202" || migration.source?.modules != [anotherworld: "0.0.0-alpha.50"] @@ -5553,9 +5553,9 @@ tasks.register("verifySafeVaultInterfaceAlpha203Release") { || migration.distribution?.jei?.modrinth_version_id != "XXTFqqwG" || migration.distribution?.jei?.prism_manifest_updated != true || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.58.jar"') || packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.50.jar"') || jeiFiles.size() != 1 @@ -5581,7 +5581,7 @@ tasks.register("verifySafeVaultFixAlpha204Release") { def packwiz = file("pack/packwiz/pack.toml").text def packwizIndex = file("pack/packwiz/index.toml").text def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.anotherworld_version != "0.0.0-alpha.58" || migration.source?.pack_version != "26.2.0-alpha.203" || migration.source?.modules != [anotherworld: "0.0.0-alpha.51"] @@ -5607,9 +5607,9 @@ tasks.register("verifySafeVaultFixAlpha204Release") { || migration.distribution?.jei?.modrinth_version_id != "OcMayhUH" || migration.distribution?.jei?.prism_manifest_updated != true || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.58.jar"') || packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.51.jar"') || jeiFiles.size() != 1 @@ -5635,7 +5635,7 @@ tasks.register("verifySafeVaultCubeAlpha205Release") { def packwiz = file("pack/packwiz/pack.toml").text def packwizIndex = file("pack/packwiz/index.toml").text def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.anotherworld_version != "0.0.0-alpha.58" || migration.source?.pack_version != "26.2.0-alpha.204" || migration.source?.modules != [anotherworld: "0.0.0-alpha.52"] @@ -5664,9 +5664,9 @@ tasks.register("verifySafeVaultCubeAlpha205Release") { || migration.distribution?.jei?.modrinth_version_id != "NtfJDMhk" || migration.distribution?.jei?.prism_manifest_updated != true || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.58.jar"') || packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.52.jar"') || jeiFiles.size() != 1 @@ -5693,7 +5693,7 @@ tasks.register("verifySafeVaultCtmAlpha206Release") { def packwiz = file("pack/packwiz/pack.toml").text def packwizIndex = file("pack/packwiz/index.toml").text def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.anotherworld_version != "0.0.0-alpha.58" || migration.source?.pack_version != "26.2.0-alpha.205" || migration.source?.modules != [anotherworld: "0.0.0-alpha.53"] @@ -5716,9 +5716,9 @@ tasks.register("verifySafeVaultCtmAlpha206Release") { || migration.compatibility?.pack_release_updated != true || migration.distribution?.packwiz_index_refreshed != true || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.58.jar"') || packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.53.jar"') || jeiFiles.size() != 1 @@ -5745,7 +5745,7 @@ tasks.register("verifySafeVaultUnlimitedAlpha207Release") { def packwiz = file("pack/packwiz/pack.toml").text def packwizIndex = file("pack/packwiz/index.toml").text def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.anotherworld_version != "0.0.0-alpha.58" || migration.source?.pack_version != "26.2.0-alpha.206" || migration.source?.modules != [anotherworld: "0.0.0-alpha.54"] @@ -5775,9 +5775,9 @@ tasks.register("verifySafeVaultUnlimitedAlpha207Release") { || migration.compatibility?.pack_release_updated != true || migration.distribution?.packwiz_index_refreshed != true || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.58.jar"') || packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.54.jar"') || jeiFiles.size() != 1 @@ -5833,7 +5833,7 @@ tasks.register("verifyCanapliaFoundation") { "itsalive/src/main/java/fr/koka99cab/sanctuary26/itsalive/ItsAliveMod.java").text def visualApiSource = file( "ambiance/src/main/java/fr/koka99cab/sanctuary26/ambiance/api/visual/AmbianceVisualEffectApi.java").text - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.itsalive_version != "0.0.0-alpha.38" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.issue != 35 @@ -6085,10 +6085,10 @@ tasks.register("verifyCanapliaAlpha209Release") { ambiance: "0.0.0-alpha.14", itsalive: "0.0.0-alpha.33", onlyfun: "0.0.0-alpha.20"] - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.ambiance_version != "0.0.0-alpha.22" || rootProject.itsalive_version != "0.0.0-alpha.38" - || rootProject.onlyfun_version != "0.0.0-alpha.28" + || rootProject.onlyfun_version != "0.0.0-alpha.29" || migration.source?.pack_version != "26.2.0-alpha.207" || migration.source?.modules != expectedSource || migration.target?.pack_version != "26.2.0-alpha.208" @@ -6133,12 +6133,12 @@ tasks.register("verifyCanapliaAlpha209Release") { || fixMigration.compatibility?.network_protocol_changed != false || fixMigration.distribution?.pack_release_updated != true || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.38.jar"') - || !packwizIndex.contains('file = "mods/onlyfun-0.0.0-alpha.28.jar"') + || !packwizIndex.contains('file = "mods/onlyfun-0.0.0-alpha.29.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.12.jar"') || packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.33.jar"') || packwizIndex.contains('file = "mods/onlyfun-0.0.0-alpha.19.jar"') @@ -6188,7 +6188,7 @@ tasks.register("verifyAlpha210Release") { def currentModules = [ ambiance: "0.0.0-alpha.22", sanctuary: "0.0.0-alpha.140", - onlyfun: "0.0.0-alpha.28", + onlyfun: "0.0.0-alpha.29", ouch: "0.0.0-alpha.11", masterkey: "0.0.0-alpha.9", iliketomoveit: "0.0.0-alpha.18", @@ -6204,9 +6204,9 @@ tasks.register("verifyAlpha210Release") { def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.sanctuary_version != "0.0.0-alpha.140" - || rootProject.onlyfun_version != "0.0.0-alpha.28" + || rootProject.onlyfun_version != "0.0.0-alpha.29" || rootProject.iliketomoveit_version != "0.0.0-alpha.18" || rootProject.itsalive_version != "0.0.0-alpha.38" || migration.source?.pack_version != "26.2.0-alpha.209" @@ -6250,10 +6250,10 @@ tasks.register("verifyAlpha210Release") { || manifests.iliketomoveit.custom?.sanctuary26?.network_protocol != 5 || manifests.itsalive.custom?.sanctuary26?.data_version != 4 || manifests.itsalive.custom?.sanctuary26?.network_protocol != 4 - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"') + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"') || requiredJars.any { !packwizIndex.contains(it) } || obsoleteJars.any { packwizIndex.contains(it) } || jeiFiles.size() != 1 @@ -6301,7 +6301,7 @@ tasks.register("verifyAlpha211Release") { sanctuary: "0.0.0-alpha.119"] def currentModules = expectedTarget + [ sanctuary: "0.0.0-alpha.140", - onlyfun: "0.0.0-alpha.28", + onlyfun: "0.0.0-alpha.29", ambiance: "0.0.0-alpha.22", iliketomoveit: "0.0.0-alpha.18", itsalive: "0.0.0-alpha.38", @@ -6334,7 +6334,7 @@ tasks.register("verifyAlpha211Release") { def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || workspaceModules.any { id, version -> rootProject.property("${id}_version") != version } || migration.source?.pack_version != "26.2.0-alpha.210" || migration.source?.modules != expectedSource @@ -6362,9 +6362,9 @@ tasks.register("verifyAlpha211Release") { || migration.distribution?.prism_modrinth_index_updated != true || migration.distribution?.shared_client_server_mrpack != true || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || requiredJars.any { !packwizIndex.contains(it) } || obsoleteJars.any { packwizIndex.contains(it) } || prism.files?.size() != 8 @@ -6372,7 +6372,7 @@ tasks.register("verifyAlpha211Release") { || jeiFiles[0].hashes?.sha1 != "e82447aff07e87a372cf817bc9c28b0d77b6f55c" || jeiFiles[0].hashes?.sha512 != "2279cb0ec4e41d9eebad80c2ecac76d19c8bc8e5aac69ba13f35b77494625c70d66edc74d59959116012bfb2f464b55806dd69fbf6387f25679b1553953e329a" || !changelog.contains("## `26.2.0-alpha.211`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.211 Abjection and gameplay-polish release is incomplete") } } @@ -6406,7 +6406,7 @@ tasks.register("verifyAlpha212Release") { def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.sanctuary_version != "0.0.0-alpha.140" || migration.source?.pack_version != "26.2.0-alpha.211" || migration.source?.modules != [sanctuary: "0.0.0-alpha.119"] @@ -6428,16 +6428,16 @@ tasks.register("verifyAlpha212Release") { || manifest.custom?.sanctuary26?.data_version != 15 || manifest.custom?.sanctuary26?.network_protocol != 24 || !minecraftMixin.contains('method = "pickBlockOrEntity"') - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" || prism.files?.size() != 8 || jeiFiles.size() != 1 - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.140.jar"') || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.119.jar"') || !changelog.contains("## `26.2.0-alpha.212`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.212 Black Market startup-fix release is incomplete") } } @@ -6471,7 +6471,7 @@ tasks.register("verifyAlpha213Release") { def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.source?.pack_version != "26.2.0-alpha.212" || migration.source?.modules != [ambiance: "0.0.0-alpha.15"] @@ -6495,16 +6495,16 @@ tasks.register("verifyAlpha213Release") { || manifest.custom?.sanctuary26?.network_protocol != 6 || !levelEventMixin.contains('@Mixin(LevelEventHandler.class)') || !levelEventMixin.contains('@Inject(method = "levelEvent"') - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" || prism.files?.size() != 8 || jeiFiles.size() != 1 - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.15.jar"') || !changelog.contains("## `26.2.0-alpha.213`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.213 Ambiance startup-fix release is incomplete") } } @@ -6539,7 +6539,7 @@ tasks.register("verifyAlpha214Release") { "ambiance/src/main/java/fr/koka99cab/sanctuary26/ambiance/client/audio/WhiteDiscAudioPlayer.java").text def urlSmoke = file( "ambiance/src/test/java/fr/koka99cab/sanctuary26/ambiance/white_disc/WhiteDiscUrlSmoke.java").text - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.source?.pack_version != "26.2.0-alpha.213" || migration.source?.modules != [ambiance: "0.0.0-alpha.16"] @@ -6568,16 +6568,16 @@ tasks.register("verifyAlpha214Release") { || !audioPlayer.contains('message.ambiance.white_disc.loading') || !audioPlayer.contains('message.ambiance.white_disc.failed') || !urlSmoke.contains("https://youtu.be/Ue5ZBe-GzSM?si=78LSbtBQzUYzhA2Y") - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" || prism.files?.size() != 8 - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.16.jar"') || !changelog.contains("## `26.2.0-alpha.214`") || changelog.contains("## Modifications non distribuées") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.214 white-disc solo synchronization release is incomplete") } } @@ -6618,7 +6618,7 @@ tasks.register("verifyAlpha215Release") { "ambiance/src/main/java/fr/koka99cab/sanctuary26/ambiance/client/audio/LavaplayerAudioStream.java").text def playbackSmoke = file( "ambiance/src/test/java/fr/koka99cab/sanctuary26/ambiance/client/audio/WhiteDiscPlaybackSmoke.java").text - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.source?.pack_version != "26.2.0-alpha.214" || migration.source?.modules != [ambiance: "0.0.0-alpha.17"] @@ -6658,16 +6658,16 @@ tasks.register("verifyAlpha215Release") { || !playbackSmoke.contains("https://www.youtube.com/watch?v=Ue5ZBe-GzSM") || !playbackSmoke.contains("stream.paddedSilenceBytes() != 0L") || !playbackSmoke.contains("stream.decodedTimelineMillis() != 4_000L") - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" || prism.files?.size() != 8 - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.17.jar"') || !changelog.contains("## `26.2.0-alpha.215`") || changelog.contains("## Modifications non distribuées") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.215 resilient white-disc playback release is incomplete") } } @@ -6712,7 +6712,7 @@ tasks.register("verifyAlpha216Release") { "ambiance/src/test/java/fr/koka99cab/sanctuary26/ambiance/client/audio/LavaplayerAudioStreamSmoke.java").text def playbackSmoke = file( "ambiance/src/test/java/fr/koka99cab/sanctuary26/ambiance/client/audio/WhiteDiscPlaybackSmoke.java").text - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.source?.pack_version != "26.2.0-alpha.215" || migration.source?.modules != [ambiance: "0.0.0-alpha.18"] @@ -6756,16 +6756,16 @@ tasks.register("verifyAlpha216Release") { || !playbackSmoke.contains("stream.paddedSilenceBytes() != 0L") || !playbackSmoke.contains("stream.decodedTimelineMillis() != 4_000L") || !playbackSmoke.contains("LavaplayerAudioStream.SAMPLE_RATE * 2 * 4") - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" || prism.files?.size() != 8 - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.18.jar"') || !changelog.contains("## `26.2.0-alpha.216`") || changelog.contains("## Modifications non distribuées") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.216 white-disc audio-quality release is incomplete") } } @@ -6800,7 +6800,7 @@ tasks.register("verifyAlpha217Release") { "ambiance/src/main/java/fr/koka99cab/sanctuary26/ambiance/client/audio/WhiteDiscAudioPlayer.java").text def streamSmoke = file( "ambiance/src/test/java/fr/koka99cab/sanctuary26/ambiance/client/audio/LavaplayerAudioStreamSmoke.java").text - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.source?.pack_version != "26.2.0-alpha.216" || migration.source?.modules != [ambiance: "0.0.0-alpha.19"] @@ -6831,16 +6831,16 @@ tasks.register("verifyAlpha217Release") { || !audioPlayer.contains("PLAYBACK_PITCH = 1.0F") || audioPlayer.count("channel.setPitch(PLAYBACK_PITCH)") != 2 || !streamSmoke.contains("WhiteDiscAudioPlayer.PLAYBACK_PITCH - 1.0F") - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" || prism.files?.size() != 8 - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.19.jar"') || !changelog.contains("## `26.2.0-alpha.217`") || changelog.contains("## Modifications non distribuées") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.217 white-disc pitch release is incomplete") } } @@ -6888,7 +6888,7 @@ tasks.register("verifyAlpha218Release") { def targetModules = [ redstoner: "0.0.0-alpha.11", onlyfun: "0.0.0-alpha.25", sanctuary: "0.0.0-alpha.121"] def currentModules = targetModules + [redstoner: "0.0.0-alpha.20", - sanctuary: "0.0.0-alpha.140", onlyfun: "0.0.0-alpha.28", + sanctuary: "0.0.0-alpha.140", onlyfun: "0.0.0-alpha.29", iliketomoveit: "0.0.0-alpha.18", ambiance: "0.0.0-alpha.22", itsalive: "0.0.0-alpha.38", ouch: "0.0.0-alpha.11", masterkey: "0.0.0-alpha.9"] def requiredJars = currentModules.collect { id, version -> @@ -6897,14 +6897,14 @@ tasks.register("verifyAlpha218Release") { def obsoleteJars = sourceModules.collect { id, version -> "file = \"mods/${id}-${version}.jar\"" } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.redstoner_version != "0.0.0-alpha.20" || currentModules.findAll { id, version -> id != "redstoner" && id != "sanctuary" && id != "onlyfun" && id != "iliketomoveit" }.any { id, version -> rootProject.property("${id}_version") != version } - || rootProject.onlyfun_version != "0.0.0-alpha.28" + || rootProject.onlyfun_version != "0.0.0-alpha.29" || rootProject.iliketomoveit_version != "0.0.0-alpha.18" || rootProject.sanctuary_version != "0.0.0-alpha.140" || migration.source?.pack_version != "26.2.0-alpha.217" @@ -6938,13 +6938,13 @@ tasks.register("verifyAlpha218Release") { || !onlyFunPolicy.contains('namespace.equals("redstoner") && path.equals("storage_terminal")') || !blackMarketPolicy.contains('namespace.equals("redstoner") && path.equals("storage_terminal")') || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || requiredJars.any { !packwizIndex.contains(it) } || obsoleteJars.any { packwizIndex.contains(it) } || !changelog.contains("## `26.2.0-alpha.218`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.218 Storage Terminal release is incomplete") } } @@ -6990,7 +6990,7 @@ tasks.register("verifyAlpha219Release") { sanctuary: "0.0.0-alpha.122", iliketomoveit: "0.0.0-alpha.16", ambiance: "0.0.0-alpha.21"] def currentModules = targetModules + [ ambiance: "0.0.0-alpha.22", sanctuary: "0.0.0-alpha.140", - iliketomoveit: "0.0.0-alpha.18", onlyfun: "0.0.0-alpha.28", + iliketomoveit: "0.0.0-alpha.18", onlyfun: "0.0.0-alpha.29", itsalive: "0.0.0-alpha.38", ouch: "0.0.0-alpha.11", masterkey: "0.0.0-alpha.9"] def workspaceModules = currentModules + [sanctuary: "0.0.0-alpha.140"] def requiredJars = currentModules.collect { id, version -> @@ -7007,7 +7007,7 @@ tasks.register("verifyAlpha219Release") { include "**/*golden*days*.zip", "**/*golden*days*.jar" exclude "**/build/**", "**/.gradle/**", "**/.git/**" }.files - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || workspaceModules.any { id, version -> rootProject.property("${id}_version") != version } || migration.source?.pack_version != "26.2.0-alpha.218" || migration.source?.modules != sourceModules @@ -7039,15 +7039,15 @@ tasks.register("verifyAlpha219Release") { || manifests.ambiance.custom?.sanctuary26?.data_version != 2 || manifests.ambiance.custom?.sanctuary26?.network_protocol != 6 || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" || prism.versionId != rootProject.pack_version || prism.files.any { it.path.toLowerCase().contains("golden-days") } - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || requiredJars.any { !packwizIndex.contains(it) } || obsoleteJars.any { packwizIndex.contains(it) } || !forbiddenGoldenArchives.isEmpty() || !changelog.contains("## `26.2.0-alpha.219`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.219 finite Alpha/Indev release is incomplete") } } @@ -7086,7 +7086,7 @@ tasks.register("verifyAlpha220Release") { "redstoner/src/main/java/fr/koka99cab/sanctuary26/redstoner/client/gui/StorageTerminalScreen.java").text def networking = file( "redstoner/src/main/java/fr/koka99cab/sanctuary26/redstoner/network/RedStonerNetworking.java").text - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.redstoner_version != "0.0.0-alpha.20" || migration.source?.pack_version != "26.2.0-alpha.219" || migration.source?.modules != [redstoner: "0.0.0-alpha.11"] @@ -7127,13 +7127,13 @@ tasks.register("verifyAlpha220Release") { || networking.contains("storage_terminal_snapshot") || networking.contains("storage_terminal_action") || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.20.jar"') || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.11.jar"') || !changelog.contains("## `26.2.0-alpha.220`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.220 Storage Terminal menu release is incomplete") } } @@ -7181,7 +7181,7 @@ tasks.register("verifyAlpha221Release") { def playbackSmoke = file( "ambiance/src/test/java/fr/koka99cab/sanctuary26/ambiance/client/audio/WhiteDiscPlaybackSmoke.java").text def contract = migration.white_disc_native_rate - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.source?.pack_version != "26.2.0-alpha.220" || migration.source?.modules != [ambiance: "0.0.0-alpha.21"] @@ -7230,13 +7230,13 @@ tasks.register("verifyAlpha221Release") { || !playbackSmoke.contains("PCM cadence: 100%% speed") || !whiteDiscDocumentation.contains("48 000 Hz") || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.21.jar"') || !changelog.contains("## `26.2.0-alpha.221`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.221 native-rate white-disc release is incomplete") } } @@ -7315,7 +7315,7 @@ tasks.register("verifyAlpha222Release") { def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.redstoner_version != "0.0.0-alpha.20" || rootProject.sanctuary_version != "0.0.0-alpha.140" || migration.source?.pack_version != "26.2.0-alpha.221" @@ -7389,10 +7389,10 @@ tasks.register("verifyAlpha222Release") { || !questEditor.contains("QuestIdSuggestions.suggest") || !suggestions.contains("Normalizer.Form.NFD") || !suggestions.contains("public static final int LIMIT = 5") - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"') + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.20.jar"') || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.140.jar"') || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.12.jar"') @@ -7403,7 +7403,7 @@ tasks.register("verifyAlpha222Release") { || jeiFiles[0].hashes?.sha1 != "e82447aff07e87a372cf817bc9c28b0d77b6f55c" || jeiFiles[0].hashes?.sha512 != "2279cb0ec4e41d9eebad80c2ecac76d19c8bc8e5aac69ba13f35b77494625c70d66edc74d59959116012bfb2f464b55806dd69fbf6387f25679b1553953e329a" || !changelog.contains("## `26.2.0-alpha.222`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.222 terminal-search and quest-tracker release is incomplete") } } @@ -7534,7 +7534,7 @@ tasks.register("verifyAlpha223Release") { def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.sanctuary_version != "0.0.0-alpha.140" || migration.source?.pack_version != "26.2.0-alpha.222" || migration.source?.modules != [sanctuary: "0.0.0-alpha.124"] @@ -7599,10 +7599,10 @@ tasks.register("verifyAlpha223Release") { || !questSync.contains("case EMERALD -> 2") || !inventorySmoke.contains("Hotbar snapshot must remain untouched") || !displaySmoke.contains("QuestTrackerDisplayMode.PANEL.next()") - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"') + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.140.jar"') || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.124.jar"') || !packwizJei.contains('filename = "jei-26.2-fabric-30.29.0.201.jar"') @@ -7611,7 +7611,7 @@ tasks.register("verifyAlpha223Release") { || jeiFiles[0].hashes?.sha1 != "e82447aff07e87a372cf817bc9c28b0d77b6f55c" || jeiFiles[0].hashes?.sha512 != "2279cb0ec4e41d9eebad80c2ecac76d19c8bc8e5aac69ba13f35b77494625c70d66edc74d59959116012bfb2f464b55806dd69fbf6387f25679b1553953e329a" || !changelog.contains("## `26.2.0-alpha.223`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.223 inventory-sort and quest-tracker display release is incomplete") } } @@ -7655,7 +7655,7 @@ tasks.register("verifyAlpha224Release") { iliketomoveit: "0.0.0-alpha.17", onlyfun: "0.0.0-alpha.26", sanctuary: "0.0.0-alpha.128"] def currentModules = targetModules + [ itsalive: "0.0.0-alpha.38", iliketomoveit: "0.0.0-alpha.18", - onlyfun: "0.0.0-alpha.28", sanctuary: "0.0.0-alpha.140"] + onlyfun: "0.0.0-alpha.29", sanctuary: "0.0.0-alpha.140"] def workspaceModules = currentModules + [sanctuary: "0.0.0-alpha.140"] def inventorySort = file( "sanctuary/src/main/java/fr/koka99cab/sanctuary26/sanctuary/gameplay/SanctuaryInventorySort.java").text @@ -7675,7 +7675,7 @@ tasks.register("verifyAlpha224Release") { }.collect { id, version -> "file = \"mods/${id}-${version}.jar\"" } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || workspaceModules.any { id, version -> rootProject.property("${id}_version") != version } || migration.status != "released" || migration.source?.pack_version != "26.2.0-alpha.223" @@ -7718,14 +7718,14 @@ tasks.register("verifyAlpha224Release") { || !sortPayload.contains("buffer.writeBoolean(container)") || !sortPayload.contains("buffer.readBoolean()") || !networking.contains("PROTOCOL_VERSION = 24") - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"') + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"') || requiredJars.any { !packwizIndex.contains(it) } || obsoleteJars.any { packwizIndex.contains(it) } || !changelog.contains("## `26.2.0-alpha.224`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.224 Notch, Magic Carpet and container-sort release is incomplete") } } @@ -7777,7 +7777,7 @@ tasks.register("verifyAlpha225Release") { iliketomoveit: "0.0.0-alpha.18", onlyfun: "0.0.0-alpha.27", sanctuary: "0.0.0-alpha.129"] def currentModules = targetModules + [ - sanctuary: "0.0.0-alpha.140", onlyfun: "0.0.0-alpha.28"] + sanctuary: "0.0.0-alpha.140", onlyfun: "0.0.0-alpha.29"] def currentWorkspaceModules = currentModules + [ anotherworld: "0.0.0-alpha.58", sanctuary: "0.0.0-alpha.140"] def workspaceModules = moduleIds.collectEntries { id -> @@ -7821,7 +7821,7 @@ tasks.register("verifyAlpha225Release") { "iliketomoveit/src/main/resources/assets/iliketomoveit/textures/item/magic_carpet.png") def carpetTextureHash = MessageDigest.getInstance("SHA-256") .digest(carpetTexture.bytes).encodeHex().toString() - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || currentWorkspaceModules.any { id, version -> rootProject.property("${id}_version") != version } || migration.status != "released" || migration.source?.pack_version != "26.2.0-alpha.224" @@ -7874,14 +7874,14 @@ tasks.register("verifyAlpha225Release") { || !lootboxes.contains("SanctuaryEntityPolicy.isTemporaryCompanion") || carpetModel.textures?.layer0 != "iliketomoveit:item/magic_carpet" || carpetTextureHash != "3e4527d24a37f0632b27d2c857b047c581db07eaa41befaffbf28043a8ed86cc" - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"') + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"') || requiredJars.any { !packwizIndex.contains(it) } || obsoleteJars.any { packwizIndex.contains(it) } || !changelog.contains("## `26.2.0-alpha.225`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.225 four-ticket bug-fix release is incomplete") } } @@ -7947,7 +7947,7 @@ tasks.register("verifyAlpha226Release") { def requiredJars = releasedModules.collect { id, version -> "file = \"mods/${id}-${version}.jar\"" } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.sanctuary_version != "0.0.0-alpha.140" || migration.status != "released" || migration.source?.pack_version != "26.2.0-alpha.225" @@ -7990,14 +7990,14 @@ tasks.register("verifyAlpha226Release") { || !renderer.contains("LivingEntityRenderLayerRegistrationCallback") || !avatarMixin.contains("appearance.bannerCape()") || onlyFun.contains('"white_cape"') - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"') + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"') || requiredJars.any { !packwizIndex.contains(it) } || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.129.jar"') || !changelog.contains("## `26.2.0-alpha.226`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.226 craftable banner cape release is incomplete") } } @@ -8038,7 +8038,7 @@ tasks.register("verifyAlpha227Release") { def requiredJars = releasedModules.collect { id, version -> "file = \"mods/${id}-${version}.jar\"" } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.anotherworld_version != "0.0.0-alpha.58" || rootProject.sanctuary_version != "0.0.0-alpha.140" || migration.status != "released" @@ -8078,15 +8078,15 @@ tasks.register("verifyAlpha227Release") { || anotherWorldManifest.custom?.sanctuary26?.network_protocol != 2 || sanctuaryManifest.custom?.sanctuary26?.data_version != 15 || sanctuaryManifest.custom?.sanctuary26?.network_protocol != 24 - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"') + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"') || requiredJars.any { !packwizIndex.contains(it) } || packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.56.jar"') || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.130.jar"') || !changelog.contains("## `26.2.0-alpha.227`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.227 persistent Backroom release is incomplete") } } @@ -8136,7 +8136,7 @@ tasks.register("verifyAlpha228Release") { def requiredJars = releasedModules.collect { id, version -> "file = \"mods/${id}-${version}.jar\"" } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.redstoner_version != "0.0.0-alpha.20" || rootProject.sanctuary_version != "0.0.0-alpha.140" || migration.status != "released" @@ -8183,15 +8183,15 @@ tasks.register("verifyAlpha228Release") { || !backroomLayout.contains("WORLD_MAX_Y_EXCLUSIVE = 384") || !backroomLayout.contains("LEVEL_4(-64, 27)") || !backroomLayout.contains("mazeConnected") - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"') + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"') || requiredJars.any { !packwizIndex.contains(it) } || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.13.jar"') || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.131.jar"') || !changelog.contains("## `26.2.0-alpha.228`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.228 five-level Backroom and terminal release is incomplete") } } @@ -8246,7 +8246,7 @@ tasks.register("verifyAlpha229Release") { "screen.redstoner.storage_terminal.sort.alphabetical", "screen.redstoner.storage_terminal.sort.count_ascending", "screen.redstoner.storage_terminal.sort.count_descending"] - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.redstoner_version != "0.0.0-alpha.20" || rootProject.sanctuary_version != "0.0.0-alpha.140" || migration.status != "released" @@ -8284,14 +8284,14 @@ tasks.register("verifyAlpha229Release") { || !screen.contains("sortMode = sortMode.next()") || !smoke.contains("verifySorting()") || !smoke.contains("periodic quantity refresh") - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"') + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"') || requiredJars.any { !packwizIndex.contains(it) } || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.15.jar"') || !changelog.contains("## `26.2.0-alpha.229`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.229 storage-terminal sorting release is incomplete") } } @@ -8331,7 +8331,7 @@ tasks.register("verifyAlpha230Release") { } def indexHash = java.security.MessageDigest.getInstance("SHA-256") .digest(packwizIndexFile.bytes).encodeHex().toString() - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.sanctuary_version != "0.0.0-alpha.140" || rootProject.redstoner_version != "0.0.0-alpha.20" || migration.schema_version != 1 @@ -8366,10 +8366,10 @@ tasks.register("verifyAlpha230Release") { || manifests.sanctuary.custom?.sanctuary26?.network_protocol != 24 || manifests.redstoner.custom?.sanctuary26?.data_version != 5 || manifests.redstoner.custom?.sanctuary26?.network_protocol != 9 - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"') + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwiz.contains("hash = \"${indexHash}\"") || requiredJars.any { !packwizIndex.contains(it) } || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.140.jar"\nhash = "f13f793dea9300543280eb761862c45e9ad86a299c4d1efa11eb7af83d2b7891"') @@ -8377,7 +8377,7 @@ tasks.register("verifyAlpha230Release") { || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.132.jar"') || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.16.jar"') || !changelog.contains("## `26.2.0-alpha.230`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.230 Sanctuary polish release is incomplete") } } @@ -8437,7 +8437,7 @@ tasks.register("verifyAlpha231Release") { } def indexHash = java.security.MessageDigest.getInstance("SHA-256") .digest(packwizIndexFile.bytes).encodeHex().toString() - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.sanctuary_version != "0.0.0-alpha.140" || rootProject.redstoner_version != "0.0.0-alpha.20" || migration.schema_version != 1 @@ -8501,10 +8501,10 @@ tasks.register("verifyAlpha231Release") { || jeiFiles[0].hashes?.sha512 != "2279cb0ec4e41d9eebad80c2ecac76d19c8bc8e5aac69ba13f35b77494625c70d66edc74d59959116012bfb2f464b55806dd69fbf6387f25679b1553953e329a" || jeiFiles[0].fileSize != 1_860_103 || !packwizJei.contains('filename = "jei-26.2-fabric-30.29.0.201.jar"') - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"') + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwiz.contains("hash = \"${indexHash}\"") || requiredJars.any { !packwizIndex.contains(it) } || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.140.jar"\nhash = "f13f793dea9300543280eb761862c45e9ad86a299c4d1efa11eb7af83d2b7891"') @@ -8513,7 +8513,7 @@ tasks.register("verifyAlpha231Release") { || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.17.jar"') || !changelog.contains("## `26.2.0-alpha.231`") || !readme.contains("Red-Stoner **`0.0.0-alpha.20`**") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**")) { throw new GradleException("The alpha.231 Backroom and trophy-panel release is incomplete") } } @@ -8581,7 +8581,7 @@ tasks.register("verifyAlpha232Release") { } def indexHash = MessageDigest.getInstance("SHA-256") .digest(packwizIndexFile.bytes).encodeHex().toString() - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.anotherworld_version != "0.0.0-alpha.58" || rootProject.sanctuary_version != "0.0.0-alpha.140" || rootProject.redstoner_version != "0.0.0-alpha.20" @@ -8640,10 +8640,10 @@ tasks.register("verifyAlpha232Release") { !lang.containsKey("message.canon.camera.screenshot_saved") || !lang.containsKey("message.canon.camera.screenshot_failed") } - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"') + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwiz.contains("hash = \"${indexHash}\"") || requiredJars.any { !packwizIndex.contains(it) } || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.58.jar"\nhash = "8936b0a5bf3f122afc752cba5e8d96ac92cfb1458785c3fac13d25f51cb4814c"') @@ -8654,7 +8654,7 @@ tasks.register("verifyAlpha232Release") { || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.18.jar"') || !changelog.contains("## `26.2.0-alpha.232`") || !changelog.contains("ticket #146") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**") + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**") || !readme.contains("Another World **`0.0.0-alpha.58`**")) { throw new GradleException("The alpha.232 Canon screenshot and alpha.231 follow-up release is incomplete") } @@ -8695,7 +8695,7 @@ tasks.register("verifyAlpha233Release") { } def indexHash = MessageDigest.getInstance("SHA-256") .digest(packwizIndexFile.bytes).encodeHex().toString() - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.sanctuary_version != "0.0.0-alpha.140" || rootProject.redstoner_version != "0.0.0-alpha.20" || migration.schema_version != 1 @@ -8727,10 +8727,10 @@ tasks.register("verifyAlpha233Release") { || manifests.sanctuary.custom?.sanctuary26?.network_protocol != 24 || manifests.redstoner.custom?.sanctuary26?.data_version != 5 || manifests.redstoner.custom?.sanctuary26?.network_protocol != 9 - || release.pack_version != "26.2.0-alpha.243" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" - || prism.versionId != "26.2.0-alpha.243" - || !packwiz.contains('version = "26.2.0-alpha.243"') + || release.pack_version != "26.2.0-alpha.244" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != "26.2.0-alpha.244" + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwiz.contains("hash = \"${indexHash}\"") || requiredJars.any { !packwizIndex.contains(it) } || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.58.jar"\nhash = "8936b0a5bf3f122afc752cba5e8d96ac92cfb1458785c3fac13d25f51cb4814c"') @@ -8739,7 +8739,7 @@ tasks.register("verifyAlpha233Release") { || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.138.jar"') || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.19.jar"') || !changelog.contains("## `26.2.0-alpha.233`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**") + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**") || !readme.contains("véritable panneau Vanilla en chêne pâle")) { throw new GradleException("The alpha.233 vanilla trophy-sign release is incomplete") } @@ -8791,7 +8791,7 @@ tasks.register("verifyAlpha240Release") { && text.contains("hash = \"${sha256}\"") && !text.contains('[update.modrinth]') } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.findProperty("zevent_version") != null || rootProject.findProperty("zevent_lifecycle") != null || file("zevent/build.gradle").exists() @@ -8826,7 +8826,7 @@ tasks.register("verifyAlpha240Release") { || migration.distribution?.distributed_module_count != 10 || distributedModuleIds.size() != 10 || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" || prism.versionId != rootProject.pack_version || prism.files?.size() != 8 || prism.files.any { it.path.contains("dreamdisplays") || it.path.contains("zevent") } @@ -8851,7 +8851,7 @@ tasks.register("verifyAlpha240Release") { || !metafileIsPinned(myDisplayMetafile, "mydisplay-1.0.0-sanctuary-4.jar", "both", "https://download.botsu.cloud/sanctuary/artifacts/mydisplay-1.0.0-sanctuary-4.jar", "6c3bb4e7f562c6730a6cfa23a162a1fa0641aed7105cb6b809bb5a097aa2e559") || !metafileIsPinned(waterMediaMetafile, "watermedia-3.0.0.23.jar", "client", "https://download.botsu.cloud/sanctuary/artifacts/watermedia-3.0.0.23.jar", "c3baefc8fbb005e349b3424f7df8f9d89b18524d5f7a358c6df73ca5e1d98b38") || !metafileIsPinned(waterMediaBinariesMetafile, "watermedia-binaries-3.0.0.6.jar", "client", "https://download.botsu.cloud/sanctuary/artifacts/watermedia-binaries-3.0.0.6.jar", "2d9333061c3d2330033fe68837a31f546dbf58984455b0cfec0deeff6b1f121e") - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwiz.contains("hash = \"${indexHash}\"") || requiredJars.any { !packwizIndex.contains(it) } || packwizIndex.contains('file = "mods/mcef-modern.pw.toml"') @@ -8863,7 +8863,7 @@ tasks.register("verifyAlpha240Release") { || !dependencyUpdater.contains('if "[update.modrinth]" not in text:') || !dependencyUpdater.contains('pinned direct download, skipped') || !changelog.contains("## `26.2.0-alpha.240`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**") + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**") || !readme.contains("met à jour MyDisplay **`1.0.0`** vers le quatrième build fourni") || !readme.contains("garde ZEVENT entièrement retiré")) { throw new GradleException("The alpha.240 MyDisplay build 2 release is incomplete") @@ -8914,7 +8914,7 @@ tasks.register("verifyAlpha241Release") { && text.contains("hash = \"${sha256}\"") && !text.contains('[update.modrinth]') } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || migration.schema_version != 1 || migration.status != "released" || migration.released_in != "26.2.0-alpha.241" @@ -8958,7 +8958,7 @@ tasks.register("verifyAlpha241Release") { || migration.distribution?.distributed_module_count != 10 || distributedModuleIds.size() != 10 || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" || prism.versionId != rootProject.pack_version || prism.files?.size() != 8 || prism.files.any { it.path.contains("dreamdisplays") || it.path.contains("zevent") || it.path.endsWith("mydisplay-1.0.0-sanctuary-3.jar") } @@ -8975,7 +8975,7 @@ tasks.register("verifyAlpha241Release") { || !metafileIsPinned(myDisplayMetafile, "mydisplay-1.0.0-sanctuary-4.jar", "both", "https://download.botsu.cloud/sanctuary/artifacts/mydisplay-1.0.0-sanctuary-4.jar", "6c3bb4e7f562c6730a6cfa23a162a1fa0641aed7105cb6b809bb5a097aa2e559") || !metafileIsPinned(waterMediaMetafile, "watermedia-3.0.0.23.jar", "client", "https://download.botsu.cloud/sanctuary/artifacts/watermedia-3.0.0.23.jar", "c3baefc8fbb005e349b3424f7df8f9d89b18524d5f7a358c6df73ca5e1d98b38") || !metafileIsPinned(waterMediaBinariesMetafile, "watermedia-binaries-3.0.0.6.jar", "client", "https://download.botsu.cloud/sanctuary/artifacts/watermedia-binaries-3.0.0.6.jar", "2d9333061c3d2330033fe68837a31f546dbf58984455b0cfec0deeff6b1f121e") - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwiz.contains("hash = \"${indexHash}\"") || requiredJars.any { !packwizIndex.contains(it) } || packwizIndex.contains('file = "mods/dreamdisplays.pw.toml"') @@ -8983,7 +8983,7 @@ tasks.register("verifyAlpha241Release") { || !packwizIndex.contains('file = "mods/watermedia.pw.toml"') || !packwizIndex.contains('file = "mods/watermedia-binaries.pw.toml"') || !changelog.contains("## `26.2.0-alpha.241`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**") + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**") || !readme.contains("garde tous les écrans visibles") || !readme.contains("audio muet ne crée plus de décodeur OpenAL/FFmpeg")) { throw new GradleException("The alpha.241 MyDisplay performance release is incomplete") @@ -9026,7 +9026,7 @@ tasks.register("verifyAlpha242Release") { 'com.mydisplay.client.media.WaterMediaBackend', 'com.mydisplay.client.media.WaterMediaBackend$Playback' ] as Set - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || migration.schema_version != 1 || migration.status != "released" || migration.released_in != "26.2.0-alpha.242" @@ -9057,7 +9057,7 @@ tasks.register("verifyAlpha242Release") { || migration.distribution?.distributed_module_count != 10 || distributedModuleIds.size() != 10 || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" || prism.versionId != rootProject.pack_version || prism.files?.size() != 8 || prism.files.any { it.path.contains("dreamdisplays") || it.path.contains("zevent") || it.path.endsWith("mydisplay-1.0.0-sanctuary-3.jar") } @@ -9073,14 +9073,14 @@ tasks.register("verifyAlpha242Release") { || !myDisplayMetafile.contains('url = "https://download.botsu.cloud/sanctuary/artifacts/mydisplay-1.0.0-sanctuary-4.jar"') || !myDisplayMetafile.contains('hash-format = "sha256"') || !myDisplayMetafile.contains('hash = "6c3bb4e7f562c6730a6cfa23a162a1fa0641aed7105cb6b809bb5a097aa2e559"') - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwiz.contains("hash = \"${indexHash}\"") || requiredJars.any { !packwizIndex.contains(it) } || !packwizIndex.contains('file = "mods/mydisplay.pw.toml"') || !packwizIndex.contains('file = "mods/watermedia.pw.toml"') || !packwizIndex.contains('file = "mods/watermedia-binaries.pw.toml"') || !changelog.contains("## `26.2.0-alpha.242`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**") + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**") || !readme.contains("quatrième build fourni") || !readme.contains("pipeline client de performance, de session et de lecture WaterMedia")) { throw new GradleException("The alpha.242 MyDisplay build 4 release is incomplete") @@ -9140,9 +9140,9 @@ tasks.register("verifyAlpha243Release") { [(locale): new JsonSlurper().parse(file( "onlyfun/src/main/resources/assets/onlyfun/lang/${locale}.json"))] } - if (rootProject.pack_version != "26.2.0-alpha.243" + if (rootProject.pack_version != "26.2.0-alpha.244" || rootProject.sanctuary_version != "0.0.0-alpha.140" - || rootProject.onlyfun_version != "0.0.0-alpha.28" + || rootProject.onlyfun_version != "0.0.0-alpha.29" || migration.schema_version != 1 || migration.status != "released" || migration.source?.pack_version != "26.2.0-alpha.242" @@ -9191,24 +9191,165 @@ tasks.register("verifyAlpha243Release") { || !lang.containsKey("tooltip.onlyfun.nourra_firework") } || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.243.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" || prism.versionId != rootProject.pack_version || prism.files?.size() != 8 - || !packwiz.contains('version = "26.2.0-alpha.243"') + || !packwiz.contains('version = "26.2.0-alpha.244"') || !packwiz.contains("hash = \"${indexHash}\"") || requiredJars.any { !packwizIndex.contains(it) } - || !packwizIndex.contains('file = "mods/onlyfun-0.0.0-alpha.28.jar"\nhash = "1f6816b78e735c0ccbe8ee518407c5dd8c1b39fedb8b74fe275869c4926699eb"') + || !packwizIndex.contains('file = "mods/onlyfun-0.0.0-alpha.29.jar"\nhash = "c55a23de665475c95c3e5fe085097e3a09bfdf389ca61575161377482deb292a"') || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.140.jar"\nhash = "f13f793dea9300543280eb761862c45e9ad86a299c4d1efa11eb7af83d2b7891"') || packwizIndex.contains('file = "mods/onlyfun-0.0.0-alpha.27.jar"') || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.139.jar"') || !changelog.contains("## `26.2.0-alpha.243`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.243`**") + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**") || !readme.contains("L’alpha.243 intègre les PR #172, #173 et #174")) { throw new GradleException("The alpha.243 merged PR release is incomplete") } } } +tasks.register("verifyAlpha244Release") { + group = "verification" + description = "Checks the Sanctuary 26.2.0-alpha.244 skin-fireworks release." + inputs.file(file("pack/migrations/26.2.0-alpha.243-skin-fireworks-to-alpha.244.json")) + inputs.file(file("pack/release.json")) + inputs.file(file("pack/prism/modrinth.index.json")) + inputs.file(file("pack/packwiz/pack.toml")) + inputs.file(file("pack/packwiz/index.toml")) + inputs.file(file("CHANGELOG.md")) + inputs.file(file("README.md")) + inputs.file(file("onlyfun/src/main/resources/fabric.mod.json")) + inputs.files(fileTree("onlyfun/src/main/resources/assets/onlyfun/lang") { include "*.json" }) + inputs.files(fileTree("onlyfun/src/main/resources/assets/onlyfun/items") { include "*_firework.json" }) + inputs.files(fileTree("onlyfun/src/main/resources/assets/onlyfun/textures/item") { include "*_firework.png" }) + inputs.files(fileTree("onlyfun/src/main/resources/data/onlyfun/recipe") { include "*_firework.json" }) + inputs.files( + file("onlyfun/src/main/java/fr/koka99cab/sanctuary26/onlyfun/item/SkinFacePortrait.java"), + file("onlyfun/src/main/java/fr/koka99cab/sanctuary26/onlyfun/item/SkinFaceFireworkItem.java"), + file("onlyfun/src/main/java/fr/koka99cab/sanctuary26/onlyfun/client/SkinFaceFireworkClient.java"), + file("onlyfun/src/main/java/fr/koka99cab/sanctuary26/onlyfun/registry/OnlyFunRegistries.java")) + doLast { + def migration = new JsonSlurper().parse(file( + "pack/migrations/26.2.0-alpha.243-skin-fireworks-to-alpha.244.json")) + def release = new JsonSlurper().parse(file("pack/release.json")) + def prism = new JsonSlurper().parse(file("pack/prism/modrinth.index.json")) + def packwiz = file("pack/packwiz/pack.toml").text + def packwizIndexFile = file("pack/packwiz/index.toml") + def packwizIndex = packwizIndexFile.text + def changelog = file("CHANGELOG.md").text + def readme = file("README.md").text + def manifest = new JsonSlurper().parse(file("onlyfun/src/main/resources/fabric.mod.json")) + def portraitSource = file( + "onlyfun/src/main/java/fr/koka99cab/sanctuary26/onlyfun/item/SkinFacePortrait.java").text + def itemSource = file( + "onlyfun/src/main/java/fr/koka99cab/sanctuary26/onlyfun/item/SkinFaceFireworkItem.java").text + def clientSource = file( + "onlyfun/src/main/java/fr/koka99cab/sanctuary26/onlyfun/client/SkinFaceFireworkClient.java").text + def registrySource = file( + "onlyfun/src/main/java/fr/koka99cab/sanctuary26/onlyfun/registry/OnlyFunRegistries.java").text + def portraitIds = ["chrism", "kaninscheun", "poupoutain", "lbeast", + "creveforest", "sacdchips", "vaselline", "duncan"] + def recipeDyes = [ + chrism: "minecraft:red_dye", + kaninscheun: "minecraft:yellow_dye", + poupoutain: "minecraft:light_gray_dye", + lbeast: "minecraft:brown_dye", + creveforest: "minecraft:green_dye", + sacdchips: "minecraft:orange_dye", + vaselline: "minecraft:white_dye", + duncan: "minecraft:pink_dye"] + def languages = ["en_us", "fr_fr", "ru_ru"].collectEntries { locale -> + [(locale): new JsonSlurper().parse(file( + "onlyfun/src/main/resources/assets/onlyfun/lang/${locale}.json"))] + } + def assetFailures = [] + portraitIds.each { id -> + def itemModel = file("onlyfun/src/main/resources/assets/onlyfun/items/${id}_firework.json") + def texture = file("onlyfun/src/main/resources/assets/onlyfun/textures/item/${id}_firework.png") + def recipeFile = file("onlyfun/src/main/resources/data/onlyfun/recipe/${id}_firework.json") + if (!itemModel.isFile()) assetFailures << "item:${id}" + if (!texture.isFile()) assetFailures << "texture:${id}" + if (!recipeFile.isFile()) { + assetFailures << "recipe:${id}" + } else { + def recipe = new JsonSlurper().parse(recipeFile) + def expectedIngredients = ["minecraft:firework_rocket", recipeDyes[id], "minecraft:paper"].toSet() + if (recipe.type != "minecraft:crafting_shapeless" + || recipe.ingredients?.toSet() != expectedIngredients + || recipe.result?.id != "onlyfun:${id}_firework" + || recipe.result?.count != 1) { + assetFailures << "recipe-contract:${id}" + } + } + } + def requiredJars = distributedModuleIds.collect { id -> + "file = \"mods/${id}-${project(":${id}").version}.jar\"" + } + def indexHash = MessageDigest.getInstance("SHA-256") + .digest(packwizIndexFile.bytes).encodeHex().toString() + def expectedPortraits = portraitIds.collect { "onlyfun:${it}_firework" } + if (rootProject.pack_version != "26.2.0-alpha.244" + || rootProject.onlyfun_version != "0.0.0-alpha.29" + || migration.schema_version != 1 + || migration.status != "released" + || migration.source?.pack_version != "26.2.0-alpha.243" + || migration.source?.modules != [onlyfun: "0.0.0-alpha.28"] + || migration.target?.pack_version != "26.2.0-alpha.244" + || migration.target?.modules != [onlyfun: "0.0.0-alpha.29"] + || migration.integrated_pull_requests != [176] + || migration.skin_fireworks?.existing_portrait_preserved != "onlyfun:nourra_firework" + || migration.skin_fireworks?.new_portraits != expectedPortraits + || migration.skin_fireworks?.portrait_size != [8, 8] + || migration.skin_fireworks?.hood_overlay != true + || migration.skin_fireworks?.camera_facing_particles != true + || migration.skin_fireworks?.normal_and_large_bursts != true + || migration.skin_fireworks?.shapeless_recipes != recipeDyes + || migration.skin_fireworks?.languages != ["en_us", "fr_fr", "ru_ru"] + || migration.compatibility?.existing_saves_supported != true + || migration.compatibility?.world_reset_required != false + || migration.compatibility?.save_migration_required != false + || migration.compatibility?.persistent_data_formats_changed != false + || migration.compatibility?.network_protocols_changed != false + || migration.compatibility?.onlyfun_data_version != 2 + || migration.compatibility?.onlyfun_network_protocol != 3 + || migration.compatibility?.client_server_update_required != true + || migration.distribution?.packwiz_index_refreshed != true + || migration.distribution?.prism_modrinth_index_updated != true + || migration.distribution?.distributed_module_count != 10 + || manifest.custom?.sanctuary26?.data_version != 2 + || manifest.custom?.sanctuary26?.network_protocol != 3 + || !portraitSource.contains("enum SkinFacePortrait") + || portraitIds.any { !portraitSource.contains("${it.toUpperCase()}(") } + || !itemSource.contains("class SkinFaceFireworkItem") + || portraitIds.any { !registrySource.contains("${it.toUpperCase()}_FIREWORK") } + || !registrySource.contains("skinFireworks()") + || !clientSource.contains("mainCamera().position()") + || !clientSource.contains("largeBurst(") + || !assetFailures.isEmpty() + || languages.any { locale, lang -> + !lang.containsKey("tooltip.onlyfun.skin_face_firework") + || portraitIds.any { portraitId -> + !lang.containsKey("item.onlyfun.${portraitId}_firework".toString()) + } + } + || release.pack_version != rootProject.pack_version + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.244.mrpack" + || prism.versionId != rootProject.pack_version + || prism.files?.size() != 8 + || !packwiz.contains('version = "26.2.0-alpha.244"') + || !packwiz.contains("hash = \"${indexHash}\"") + || requiredJars.any { !packwizIndex.contains(it) } + || !packwizIndex.contains('file = "mods/onlyfun-0.0.0-alpha.29.jar"\nhash = "c55a23de665475c95c3e5fe085097e3a09bfdf389ca61575161377482deb292a"') + || packwizIndex.contains('file = "mods/onlyfun-0.0.0-alpha.28.jar"') + || !changelog.contains("## `26.2.0-alpha.244`") + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.244`**") + || !readme.contains("L’alpha.244 intègre la PR #176")) { + throw new GradleException("The alpha.244 skin-fireworks release is incomplete.") + } + } +} + tasks.named("verifyWorkspace") { dependsOn tasks.named("verifyAlpha213Release") dependsOn tasks.named("verifyAlpha214Release") @@ -9237,6 +9378,7 @@ tasks.named("verifyWorkspace") { dependsOn tasks.named("verifyAlpha241Release") dependsOn tasks.named("verifyAlpha242Release") dependsOn tasks.named("verifyAlpha243Release") + dependsOn tasks.named("verifyAlpha244Release") } tasks.named("check") { diff --git a/gradle.properties b/gradle.properties index f19a9f0..0ee221c 100644 --- a/gradle.properties +++ b/gradle.properties @@ -26,9 +26,9 @@ masterkey_version=0.0.0-alpha.9 masterkey_lifecycle=active iliketomoveit_version=0.0.0-alpha.18 iliketomoveit_lifecycle=active -onlyfun_version=0.0.0-alpha.28 +onlyfun_version=0.0.0-alpha.29 onlyfun_lifecycle=active sanctuary_version=0.0.0-alpha.140 sanctuary_lifecycle=active -pack_version=26.2.0-alpha.243 +pack_version=26.2.0-alpha.244 maven_group=fr.koka99cab.sanctuary26 diff --git a/pack/migrations/26.2.0-alpha.243-skin-fireworks-to-alpha.244.json b/pack/migrations/26.2.0-alpha.243-skin-fireworks-to-alpha.244.json new file mode 100644 index 0000000..fe49cf2 --- /dev/null +++ b/pack/migrations/26.2.0-alpha.243-skin-fireworks-to-alpha.244.json @@ -0,0 +1,62 @@ +{ + "schema_version": 1, + "status": "released", + "source": { + "pack_version": "26.2.0-alpha.243", + "modules": { + "onlyfun": "0.0.0-alpha.28" + } + }, + "target": { + "pack_version": "26.2.0-alpha.244", + "modules": { + "onlyfun": "0.0.0-alpha.29" + } + }, + "integrated_pull_requests": [176], + "skin_fireworks": { + "existing_portrait_preserved": "onlyfun:nourra_firework", + "new_portraits": [ + "onlyfun:chrism_firework", + "onlyfun:kaninscheun_firework", + "onlyfun:poupoutain_firework", + "onlyfun:lbeast_firework", + "onlyfun:creveforest_firework", + "onlyfun:sacdchips_firework", + "onlyfun:vaselline_firework", + "onlyfun:duncan_firework" + ], + "portrait_size": [8, 8], + "hood_overlay": true, + "camera_facing_particles": true, + "normal_and_large_bursts": true, + "shapeless_recipes": { + "chrism": "minecraft:red_dye", + "kaninscheun": "minecraft:yellow_dye", + "poupoutain": "minecraft:light_gray_dye", + "lbeast": "minecraft:brown_dye", + "creveforest": "minecraft:green_dye", + "sacdchips": "minecraft:orange_dye", + "vaselline": "minecraft:white_dye", + "duncan": "minecraft:pink_dye" + }, + "languages": ["en_us", "fr_fr", "ru_ru"] + }, + "compatibility": { + "existing_saves_supported": true, + "world_reset_required": false, + "save_migration_required": false, + "persistent_data_formats_changed": false, + "network_protocols_changed": false, + "onlyfun_data_version": 2, + "onlyfun_network_protocol": 3, + "client_server_update_required": true + }, + "distribution": { + "pack_release_updated": true, + "packwiz_index_refreshed": true, + "prism_modrinth_index_updated": true, + "shared_client_server_mrpack": true, + "distributed_module_count": 10 + } +} diff --git a/pack/packwiz/index.toml b/pack/packwiz/index.toml index 7fea904..5b306e0 100644 --- a/pack/packwiz/index.toml +++ b/pack/packwiz/index.toml @@ -57,8 +57,8 @@ hash = "a5538de6d9c38cf37ff0882451fd025c8a24c7cb250482baa4ca5918d1129b06" metafile = true [[files]] -file = "mods/onlyfun-0.0.0-alpha.28.jar" -hash = "1f6816b78e735c0ccbe8ee518407c5dd8c1b39fedb8b74fe275869c4926699eb" +file = "mods/onlyfun-0.0.0-alpha.29.jar" +hash = "c55a23de665475c95c3e5fe085097e3a09bfdf389ca61575161377482deb292a" [[files]] file = "mods/ouch-0.0.0-alpha.11.jar" diff --git a/pack/packwiz/pack.toml b/pack/packwiz/pack.toml index a1556e5..3479cee 100644 --- a/pack/packwiz/pack.toml +++ b/pack/packwiz/pack.toml @@ -1,12 +1,12 @@ name = "Sanctuary 26.2" author = "KOKA99CAB" -version = "26.2.0-alpha.243" +version = "26.2.0-alpha.244" pack-format = "packwiz:1.1.0" [index] file = "index.toml" hash-format = "sha256" -hash = "41ec6d85ef927e5f5a85084237cd4a16f8c746b72f21e44fde383d93f65957d3" +hash = "e31218336db4e25008fa5203ab85cbb85172d0b21425b77ec5bfb20949d5ea3e" [versions] fabric = "0.19.3" diff --git a/pack/prism/modrinth.index.json b/pack/prism/modrinth.index.json index 9d65ab9..4e52ae1 100644 --- a/pack/prism/modrinth.index.json +++ b/pack/prism/modrinth.index.json @@ -3,7 +3,7 @@ "game": "minecraft", "name": "Sanctuary 26.2", "summary": "Sanctuary 26.2 — progression, exploration, worldgen and multiplayer systems by KOKA99CAB.", - "versionId": "26.2.0-alpha.243", + "versionId": "26.2.0-alpha.244", "files": [ { "path": "mods/fabric-api-0.159.0+26.2.jar", diff --git a/pack/release.json b/pack/release.json index 7db1bae..bf7b661 100644 --- a/pack/release.json +++ b/pack/release.json @@ -1,6 +1,6 @@ { "schema_version": 1, - "pack_version": "26.2.0-alpha.243", + "pack_version": "26.2.0-alpha.244", "release_channel": "alpha", "minecraft_version": "26.2", "fabric_loader_version": "0.19.3", @@ -9,7 +9,7 @@ "project_id": "FgOqyAXd", "project_slug": "sanctuary-koka99", "project_url": "https://modrinth.com/modpack/sanctuary-koka99", - "primary_file": "sanctuary-26.2.0-alpha.243.mrpack", + "primary_file": "sanctuary-26.2.0-alpha.244.mrpack", "shared_client_server_pack": true, "update_owner": "packwiz-installer", "check_on_launch": true,