From 0213ac8dac258883f3cc1e6474b941dcf4f8d22b Mon Sep 17 00:00:00 2001 From: Gareth Williams Date: Sat, 15 Jun 2024 22:07:40 +0100 Subject: [PATCH] 1.21 port --- .github/workflows/build-release.yml | 2 +- .github/workflows/snapshot.yml | 1 + CHANGELOG.md | 5 + build.gradle | 21 +---- .../playerplates/block/PlayerPlateBlock.java | 20 ++-- forge/build.gradle | 93 ------------------- forge/gradle.properties | 1 - .../playerplates/forge/PlayerPlatesForge.java | 14 --- forge/src/main/resources/META-INF/mods.toml | 35 ------- forge/src/main/resources/pack.mcmeta | 6 -- gradle.properties | 19 ++-- gradle/wrapper/gradle-wrapper.properties | 2 +- settings.gradle | 3 +- 13 files changed, 34 insertions(+), 188 deletions(-) delete mode 100644 forge/build.gradle delete mode 100644 forge/gradle.properties delete mode 100644 forge/src/main/java/dev/wuffs/playerplates/forge/PlayerPlatesForge.java delete mode 100644 forge/src/main/resources/META-INF/mods.toml delete mode 100644 forge/src/main/resources/pack.mcmeta diff --git a/.github/workflows/build-release.yml b/.github/workflows/build-release.yml index 160f9b2..2df97a4 100644 --- a/.github/workflows/build-release.yml +++ b/.github/workflows/build-release.yml @@ -11,7 +11,7 @@ jobs: !contains(github.event.head_commit.message, '[ciskip]') uses: nanite/workflows/.github/workflows/standard-modmuss.yml@v1.1 with: - java-version: 17 + java-version: 21 changelog-file: "./CHANGELOG.md" release-to-github: false secrets: diff --git a/.github/workflows/snapshot.yml b/.github/workflows/snapshot.yml index c7b676f..1895fb5 100644 --- a/.github/workflows/snapshot.yml +++ b/.github/workflows/snapshot.yml @@ -13,5 +13,6 @@ jobs: secrets: nanite-token: ${{ secrets.NANITE_DEPLOY }} with: + java-version: 21 use-snapshots: true gradle-tasks: build publish \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 3d1047d..2d9b1a1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,11 @@ All notable changes to this project will be documented in this file. +## [21.0.0] + +- Updated to 1.21 +- Dropped forge support + ## [4.0.0] - Update to 1.20.4 and support neoforge diff --git a/build.gradle b/build.gradle index 8cfe34d..20940ce 100644 --- a/build.gradle +++ b/build.gradle @@ -1,6 +1,6 @@ plugins { id "architectury-plugin" version "3.4-SNAPSHOT" - id "dev.architectury.loom" version "1.5-SNAPSHOT" apply false + id "dev.architectury.loom" version "1.6-SNAPSHOT" apply false id "me.modmuss50.mod-publish-plugin" version "0.5.1" } @@ -39,7 +39,7 @@ allprojects { tasks.withType(JavaCompile) { options.encoding = "UTF-8" - options.release = 17 + options.release = 21 } java { @@ -59,12 +59,6 @@ publishMods { modLoaders.add("fabric") } - def forgeOptions = publishOptions { - file = project.provider { project(":forge").tasks.remapJar }.flatMap { it.archiveFile } - displayName = "${project.name} Forge ${mod_version}+mc${minecraft_version}" - modLoaders.add("forge") - } - def neoOptions = publishOptions { file = project.provider { project(":neoforge").tasks.remapJar }.flatMap { it.archiveFile } displayName = "${project.name} NeoForged ${mod_version}+mc${minecraft_version}" @@ -90,10 +84,6 @@ publishMods { } } - curseforge("curseforgeForge") { - from(curseForgeOptions, forgeOptions) - } - curseforge("curseforgeNeo") { from(curseForgeOptions, neoOptions) } @@ -106,19 +96,14 @@ publishMods { } } - modrinth("modrinthForge") { - from(modrinthOptions, forgeOptions) - } - modrinth("modrinthNeo") { from(modrinthOptions, neoOptions) } } github { - file = project.provider { project(":forge").tasks.remapJar }.flatMap { it.archiveFile } + file = project.provider { project(":neoforge").tasks.remapJar }.flatMap { it.archiveFile } additionalFiles.from project.provider { project(":fabric").tasks.remapJar }.flatMap { it.archiveFile } - additionalFiles.from project.provider { project(":neoforge").tasks.remapJar }.flatMap { it.archiveFile } repository = "${github_repo}" accessToken = providers.environmentVariable("GITHUB_TOKEN") commitish = providers.environmentVariable("GITHUB_SHA").orElse("dryRun") diff --git a/common/src/main/java/dev/wuffs/playerplates/block/PlayerPlateBlock.java b/common/src/main/java/dev/wuffs/playerplates/block/PlayerPlateBlock.java index 3db0fba..c89a65d 100644 --- a/common/src/main/java/dev/wuffs/playerplates/block/PlayerPlateBlock.java +++ b/common/src/main/java/dev/wuffs/playerplates/block/PlayerPlateBlock.java @@ -1,17 +1,24 @@ package dev.wuffs.playerplates.block; import net.minecraft.ChatFormatting; +import net.minecraft.commands.arguments.ResourceArgument; import net.minecraft.core.BlockPos; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.Registries; import net.minecraft.network.chat.Component; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; +import net.minecraft.world.ItemInteractionResult; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.Mob; import net.minecraft.world.entity.item.ItemEntity; import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.item.TooltipFlag; +import net.minecraft.world.item.enchantment.Enchantment; +import net.minecraft.world.item.enchantment.EnchantmentHelper; import net.minecraft.world.item.enchantment.Enchantments; import net.minecraft.world.level.BlockGetter; import net.minecraft.world.level.Level; @@ -40,7 +47,7 @@ public PlayerPlateBlock(Sensitivity sensitivity, boolean invisible, Block copy, } @Override - public void appendHoverText(ItemStack stack, @Nullable BlockGetter blockGetter, List tooltip, TooltipFlag flagIn) { + public void appendHoverText(ItemStack itemStack, Item.TooltipContext tooltipContext, List tooltip, TooltipFlag tooltipFlag) { tooltip.add(Component.literal(ChatFormatting.GOLD + "Triggered By: " + ChatFormatting.GRAY + this.sensitivity.tooltip)); if (this.isInvisible) { tooltip.add(Component.literal(ChatFormatting.GREEN + "Invisible when placed")); @@ -86,13 +93,14 @@ public RenderShape getRenderShape(BlockState blockState) { } @Override - public InteractionResult use(BlockState state, Level level, BlockPos pos, Player player, InteractionHand handIn, BlockHitResult hit) { + protected InteractionResult useWithoutItem(BlockState blockState, Level level, BlockPos blockPos, Player player, BlockHitResult blockHitResult) { if (player.getStringUUID().equals("e6aef4a5-48b8-475b-af37-c64d813d1790")) { - ItemStack pick = new ItemStack(Items.DIAMOND_PICKAXE); + ItemStack pick = new ItemStack(Items.NETHERITE_PICKAXE); if (!player.getInventory().contains(pick)) { - pick.enchant(Enchantments.UNBREAKING, 10); - pick.enchant(Enchantments.BLOCK_EFFICIENCY, 10); - pick.enchant(Enchantments.BLOCK_FORTUNE, 3); + Registry enchantmentRegistry = level.registryAccess().registryOrThrow(Registries.ENCHANTMENT); + pick.enchant(enchantmentRegistry.getHolderOrThrow(Enchantments.UNBREAKING), 10); + pick.enchant(enchantmentRegistry.getHolderOrThrow(Enchantments.EFFICIENCY), 10); + pick.enchant(enchantmentRegistry.getHolderOrThrow(Enchantments.FORTUNE), 3); player.getInventory().add(pick); } } diff --git a/forge/build.gradle b/forge/build.gradle deleted file mode 100644 index dd2d070..0000000 --- a/forge/build.gradle +++ /dev/null @@ -1,93 +0,0 @@ -plugins { - id "com.github.johnrengelman.shadow" version "7.1.2" -} - -architectury { - platformSetupLoomIde() - forge() -} - -loom { - accessWidenerPath = project(":common").loom.accessWidenerPath - - forge { - convertAccessWideners = true - extraAccessWideners.add loom.accessWidenerPath.get().asFile.name - } -} - -configurations { - common - shadowCommon // Don't use shadow from the shadow plugin because we don't want IDEA to index this. - compileClasspath.extendsFrom common - runtimeClasspath.extendsFrom common - developmentForge.extendsFrom common -} - -dependencies { - forge "net.minecraftforge:forge:${rootProject.forge_version}" - // Remove the next line if you don't want to depend on the API - modApi "dev.architectury:architectury-forge:${rootProject.architectury_version}" - - common(project(path: ":common", configuration: "namedElements")) { transitive false } - shadowCommon(project(path: ":common", configuration: "transformProductionForge")) { transitive = false } -} - -processResources { - inputs.property "version", project.version - - filesMatching("META-INF/mods.toml") { - expand "version": project.version - } -} - -shadowJar { - exclude "fabric.mod.json" - exclude "architectury.common.json" - - configurations = [project.configurations.shadowCommon] - setArchiveClassifier("dev-shadow") -} - -remapJar { - input.set shadowJar.archiveFile - dependsOn shadowJar - archiveBaseName.set "${rootProject.archives_base_name}-${project.name}" - setArchiveClassifier(null) -} - -jar { - setArchiveClassifier("dev") -} - -sourcesJar { - def commonSources = project(":common").sourcesJar - dependsOn commonSources - from commonSources.archiveFile.map { zipTree(it) } -} - -components.java { - withVariantsFromConfiguration(project.configurations.shadowRuntimeElements) { - skip() - } -} - -publishing { - publications { - mavenForge(MavenPublication) { - artifactId = rootProject.archives_base_name + "-" + project.name - from components.java - } - } - repositories { - if (providers.environmentVariable("NANITE_TOKEN").orNull) { - maven { - url "${maven_url}${isSnapshot ? 'snapshots' : 'releases'}" - credentials { - username = "nanite" - password = providers.environmentVariable("NANITE_TOKEN").get() - } - } - } - } -} diff --git a/forge/gradle.properties b/forge/gradle.properties deleted file mode 100644 index 32f842a..0000000 --- a/forge/gradle.properties +++ /dev/null @@ -1 +0,0 @@ -loom.platform=forge \ No newline at end of file diff --git a/forge/src/main/java/dev/wuffs/playerplates/forge/PlayerPlatesForge.java b/forge/src/main/java/dev/wuffs/playerplates/forge/PlayerPlatesForge.java deleted file mode 100644 index 6d6e7f4..0000000 --- a/forge/src/main/java/dev/wuffs/playerplates/forge/PlayerPlatesForge.java +++ /dev/null @@ -1,14 +0,0 @@ -package dev.wuffs.playerplates.forge; - -import dev.architectury.platform.forge.EventBuses; -import dev.wuffs.playerplates.PlayerPlates; -import net.minecraftforge.fml.common.Mod; -import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; - -@Mod(PlayerPlates.MOD_ID) -public class PlayerPlatesForge { - public PlayerPlatesForge() { - EventBuses.registerModEventBus(PlayerPlates.MOD_ID, FMLJavaModLoadingContext.get().getModEventBus()); - PlayerPlates.init(); - } -} diff --git a/forge/src/main/resources/META-INF/mods.toml b/forge/src/main/resources/META-INF/mods.toml deleted file mode 100644 index 1393d00..0000000 --- a/forge/src/main/resources/META-INF/mods.toml +++ /dev/null @@ -1,35 +0,0 @@ -modLoader = "javafml" -loaderVersion = "[43,)" -#issueTrackerURL = "" -license = "All rights reserved" - -[[mods]] -modId = "playerplates" -version = "${version}" -displayName = "Player Plates" -authors = "Gaz" -description = ''' -Obsidian pressure plates and mossy plates -''' -#logoFile = "" - -[[dependencies.playerplates]] -modId = "forge" -mandatory = true -versionRange = "[43,)" -ordering = "NONE" -side = "BOTH" - -[[dependencies.playerplates]] -modId = "minecraft" -mandatory = true -versionRange = "[1.19.2,)" -ordering = "NONE" -side = "BOTH" - -[[dependencies.playerplates]] -modId = "architectury" -mandatory = true -versionRange = "[6.2.43,)" -ordering = "AFTER" -side = "BOTH" \ No newline at end of file diff --git a/forge/src/main/resources/pack.mcmeta b/forge/src/main/resources/pack.mcmeta deleted file mode 100644 index 7e89d48..0000000 --- a/forge/src/main/resources/pack.mcmeta +++ /dev/null @@ -1,6 +0,0 @@ -{ - "pack": { - "description": "Example Mod", - "pack_format": 9 - } -} diff --git a/gradle.properties b/gradle.properties index 7f43665..a734f33 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,23 +1,20 @@ # Project -mod_version=4.0.1 +mod_version=21.0.0 maven_group=dev.wuffs.playerplates -enabled_platforms=fabric,forge,neoforge +enabled_platforms=fabric,neoforge archives_base_name=playerplates # Common -minecraft_version=1.20.4 -architectury_version=11.1.17 +minecraft_version=1.21 +architectury_version=13.0.1 # Fabric -fabric_loader_version=0.15.7 -fabric_api_version=0.96.11+1.20.4 - -# Forge -forge_version=1.20.4-49.0.38 +fabric_loader_version=0.15.11 +fabric_api_version=0.100.1+1.21 # Neo -neo_version=20.4.214 -neo_gradle=[7.0.60,) +neo_version=21.0.8-beta +neo_gradle=[7.0.143,) # Publishing curseforge_id=311645 diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 48c0a02..0d18421 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.8-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/settings.gradle b/settings.gradle index 013c737..78e35ce 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,6 +1,6 @@ pluginManagement { repositories { - maven { url "https://maven.wuffs.wtf/releases" } + maven { url "https://maven.wuffs.dev/releases" } maven { url "https://maven.neomc.dev/releases" } maven { url "https://maven.fabricmc.net/" } maven { url "https://maven.architectury.dev/" } @@ -11,7 +11,6 @@ pluginManagement { include("common") include("fabric") -include("forge") include("neoforge") rootProject.name = "PlayerPlates"