From 07e3aaf60c92383803802db8f6861db63f66cb8f Mon Sep 17 00:00:00 2001 From: lionarius Date: Thu, 27 Jun 2024 17:04:51 +0300 Subject: [PATCH] architectury --- build.gradle | 132 +++++++++++------- common/build.gradle | 10 ++ .../skinrestorer/MineskinSkinProvider.java | 0 .../skinrestorer/MojangSkinProvider.java | 0 .../net/lionarius/skinrestorer/SkinIO.java | 0 .../lionarius/skinrestorer/SkinRestorer.java | 8 +- .../lionarius/skinrestorer/SkinResult.java | 0 .../lionarius/skinrestorer/SkinStorage.java | 0 .../skinrestorer/command/SkinCommand.java | 0 .../skinrestorer/enums/SkinVariant.java | 0 .../mixin/CommandManagerMixin.java | 0 .../mixin/PlayerManagerMixin.java | 0 .../mixin/ServerLoginNetworkHandlerMixin.java | 0 .../skinrestorer/util/FileUtils.java | 0 .../skinrestorer/util/JsonUtils.java | 0 .../skinrestorer/util/PlayerUtils.java | 0 .../skinrestorer/util/StringUtils.java | 0 .../skinrestorer/util/TranslationUtils.java | 0 .../lionarius/skinrestorer/util/WebUtils.java | 0 .../main/resources/skinrestorer.mixins.json | 0 fabric/build.gradle | 49 +++++++ .../fabric/SkinRestorerFabric.java | 11 ++ .../src}/main/resources/fabric.mod.json | 4 +- gradle.properties | 21 ++- neoforge/build.gradle | 56 ++++++++ neoforge/gradle.properties | 1 + .../neoforge/SkinRestorerNeoForge.java | 12 ++ .../resources/META-INF/neoforge.mods.toml | 31 ++++ settings.gradle | 12 ++ 29 files changed, 280 insertions(+), 67 deletions(-) create mode 100644 common/build.gradle rename {src => common/src}/main/java/net/lionarius/skinrestorer/MineskinSkinProvider.java (100%) rename {src => common/src}/main/java/net/lionarius/skinrestorer/MojangSkinProvider.java (100%) rename {src => common/src}/main/java/net/lionarius/skinrestorer/SkinIO.java (100%) rename {src => common/src}/main/java/net/lionarius/skinrestorer/SkinRestorer.java (97%) rename {src => common/src}/main/java/net/lionarius/skinrestorer/SkinResult.java (100%) rename {src => common/src}/main/java/net/lionarius/skinrestorer/SkinStorage.java (100%) rename {src => common/src}/main/java/net/lionarius/skinrestorer/command/SkinCommand.java (100%) rename {src => common/src}/main/java/net/lionarius/skinrestorer/enums/SkinVariant.java (100%) rename {src => common/src}/main/java/net/lionarius/skinrestorer/mixin/CommandManagerMixin.java (100%) rename {src => common/src}/main/java/net/lionarius/skinrestorer/mixin/PlayerManagerMixin.java (100%) rename {src => common/src}/main/java/net/lionarius/skinrestorer/mixin/ServerLoginNetworkHandlerMixin.java (100%) rename {src => common/src}/main/java/net/lionarius/skinrestorer/util/FileUtils.java (100%) rename {src => common/src}/main/java/net/lionarius/skinrestorer/util/JsonUtils.java (100%) rename {src => common/src}/main/java/net/lionarius/skinrestorer/util/PlayerUtils.java (100%) rename {src => common/src}/main/java/net/lionarius/skinrestorer/util/StringUtils.java (100%) rename {src => common/src}/main/java/net/lionarius/skinrestorer/util/TranslationUtils.java (100%) rename {src => common/src}/main/java/net/lionarius/skinrestorer/util/WebUtils.java (100%) rename {src => common/src}/main/resources/skinrestorer.mixins.json (100%) create mode 100644 fabric/build.gradle create mode 100644 fabric/src/main/java/net/lionarius/skinrestorer/fabric/SkinRestorerFabric.java rename {src => fabric/src}/main/resources/fabric.mod.json (88%) create mode 100644 neoforge/build.gradle create mode 100644 neoforge/gradle.properties create mode 100644 neoforge/src/main/java/net/lionarius/skinrestorer/neoforge/SkinRestorerNeoForge.java create mode 100644 neoforge/src/main/resources/META-INF/neoforge.mods.toml diff --git a/build.gradle b/build.gradle index 55ccae1..4590a99 100644 --- a/build.gradle +++ b/build.gradle @@ -1,42 +1,66 @@ plugins { - id 'fabric-loom' version '1.7-SNAPSHOT' - id "com.modrinth.minotaur" version "2.+" - id 'net.darkhax.curseforgegradle' version '1.1.15' + id 'dev.architectury.loom' version '1.6-SNAPSHOT' apply false + id 'architectury-plugin' version '3.4-SNAPSHOT' + id 'com.github.johnrengelman.shadow' version '8.1.1' apply false +// id "com.modrinth.minotaur" version "2.+" +// id 'net.darkhax.curseforgegradle' version '1.1.15' } -version = "${project.mod_version}+${project.minecraft_version}" -group = project.maven_group - ext.version_name = "${project.capitalized_name} ${project.mod_version}" ext.headTag = "git describe --tags --abbrev=0 HEAD".execute([], rootProject.projectDir).text.trim() ext.previousTag = "git describe --tags --abbrev=0 HEAD^".execute([], rootProject.projectDir).text.trim() -dependencies { - minecraft "com.mojang:minecraft:${project.minecraft_version}" - mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2" - modImplementation "net.fabricmc:fabric-loader:${project.loader_version}" +architectury { + minecraft = project.minecraft_version } -processResources { - inputs.property "version", project.version +allprojects { + version = "${project.mod_version}+${project.minecraft_version}" + group = project.maven_group +} - filesMatching("fabric.mod.json") { - expand "version": project.version +subprojects { + apply plugin: 'dev.architectury.loom' + apply plugin: 'architectury-plugin' + apply plugin: 'maven-publish' + + base { + // Set up a suffixed format for the mod jar names, e.g. `example-fabric`. + archivesName = "$rootProject.archives_name-$project.name" } -} -tasks.withType(JavaCompile).configureEach { - it.options.encoding = "UTF-8" + repositories { + // Add repositories to retrieve artifacts from in here. + // You should only use this when depending on other mods because + // Loom adds the essential maven repositories to download Minecraft and libraries from automatically. + // See https://docs.gradle.org/current/userguide/declaring_repositories.html + // for more information about repositories. + } - it.options.release.set(21) -} + dependencies { + minecraft "net.minecraft:minecraft:$rootProject.minecraft_version" + mappings loom.layered { + it.mappings("net.fabricmc:yarn:$rootProject.yarn_mappings:v2") + it.mappings("dev.architectury:yarn-mappings-patch-neoforge:$rootProject.yarn_mappings_patch_neoforge_version") + } + } -java { - withSourcesJar() -} + java { + withSourcesJar() -jar { - from "LICENSE" + sourceCompatibility = JavaVersion.VERSION_21 + targetCompatibility = JavaVersion.VERSION_21 + } + + jar { + from "$rootProject.projectDir/LICENSE" + } + + tasks.withType(JavaCompile).configureEach { + it.options.encoding = "UTF-8" + + it.options.release.set(21) + } } // Adapted from https://raw.githubusercontent.com/TerraformersMC/GradleScripts/2.7/ferry.gradle @@ -79,36 +103,36 @@ tasks.register('assertNewVersion') { } } -tasks.register('publish') { - group = 'publishing' - dependsOn 'assertNewVersion' - dependsOn 'generateChangelog' - dependsOn 'modrinth' -// dependsOn 'curseforge' - doFirst { - println "Last version: $previousTag" - println "Current version: $headTag" - println "Changelog:" - println generateChangelog.changelog - } -} - -modrinth { - token = System.getenv('MODRINTH_TOKEN') - projectId = project.modrinth_id - versionName = version_name - versionType = "release" - changelog = generateChangelog.changelog - uploadFile = remapJar - project.modrinth_game_versions.split(',').each { - gameVersions.add(it.trim()) - } - project.modrinth_mod_loaders.split(',').each { - loaders.add(it.trim()) - } -} - -tasks.modrinth.dependsOn('assertNewVersion') +//tasks.register('publish') { +// group = 'publishing' +// dependsOn 'assertNewVersion' +// dependsOn 'generateChangelog' +// dependsOn 'modrinth' +//// dependsOn 'curseforge' +// doFirst { +// println "Last version: $previousTag" +// println "Current version: $headTag" +// println "Changelog:" +// println generateChangelog.changelog +// } +//} +// +//modrinth { +// token = System.getenv('MODRINTH_TOKEN') +// projectId = project.modrinth_id +// versionName = version_name +// versionType = "release" +// changelog = generateChangelog.changelog +// uploadFile = remapJar +// project.modrinth_game_versions.split(',').each { +// gameVersions.add(it.trim()) +// } +// project.modrinth_mod_loaders.split(',').each { +// loaders.add(it.trim()) +// } +//} +// +//tasks.modrinth.dependsOn('assertNewVersion') // cannot test it, returns 403 Forbidden. disabled for now //import net.darkhax.curseforgegradle.TaskPublishCurseForge diff --git a/common/build.gradle b/common/build.gradle new file mode 100644 index 0000000..56de260 --- /dev/null +++ b/common/build.gradle @@ -0,0 +1,10 @@ +architectury { + common rootProject.enabled_platforms.split(',') +} + +dependencies { + // We depend on Fabric Loader here to use the Fabric @Environment annotations, + // which get remapped to the correct annotations on each platform. + // Do NOT use other classes from Fabric Loader. + modImplementation "net.fabricmc:fabric-loader:$rootProject.fabric_loader_version" +} diff --git a/src/main/java/net/lionarius/skinrestorer/MineskinSkinProvider.java b/common/src/main/java/net/lionarius/skinrestorer/MineskinSkinProvider.java similarity index 100% rename from src/main/java/net/lionarius/skinrestorer/MineskinSkinProvider.java rename to common/src/main/java/net/lionarius/skinrestorer/MineskinSkinProvider.java diff --git a/src/main/java/net/lionarius/skinrestorer/MojangSkinProvider.java b/common/src/main/java/net/lionarius/skinrestorer/MojangSkinProvider.java similarity index 100% rename from src/main/java/net/lionarius/skinrestorer/MojangSkinProvider.java rename to common/src/main/java/net/lionarius/skinrestorer/MojangSkinProvider.java diff --git a/src/main/java/net/lionarius/skinrestorer/SkinIO.java b/common/src/main/java/net/lionarius/skinrestorer/SkinIO.java similarity index 100% rename from src/main/java/net/lionarius/skinrestorer/SkinIO.java rename to common/src/main/java/net/lionarius/skinrestorer/SkinIO.java diff --git a/src/main/java/net/lionarius/skinrestorer/SkinRestorer.java b/common/src/main/java/net/lionarius/skinrestorer/SkinRestorer.java similarity index 97% rename from src/main/java/net/lionarius/skinrestorer/SkinRestorer.java rename to common/src/main/java/net/lionarius/skinrestorer/SkinRestorer.java index 4c33c9f..b6f6db7 100644 --- a/src/main/java/net/lionarius/skinrestorer/SkinRestorer.java +++ b/common/src/main/java/net/lionarius/skinrestorer/SkinRestorer.java @@ -5,7 +5,6 @@ import com.google.gson.JsonObject; import com.mojang.authlib.GameProfile; import com.mojang.authlib.properties.Property; import it.unimi.dsi.fastutil.Pair; -import net.fabricmc.api.DedicatedServerModInitializer; import net.fabricmc.loader.api.FabricLoader; import net.minecraft.network.packet.s2c.play.*; import net.minecraft.server.MinecraftServer; @@ -22,18 +21,19 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.TimeUnit; import java.util.function.Supplier; -public class SkinRestorer implements DedicatedServerModInitializer { +public class SkinRestorer { private static SkinStorage skinStorage; + public static final String MOD_ID = "skinrestorer"; + public static final Logger LOGGER = LoggerFactory.getLogger("SkinRestorer"); public static SkinStorage getSkinStorage() { return skinStorage; } - @Override - public void onInitializeServer() { + public static void onInitialize() { skinStorage = new SkinStorage(new SkinIO(FabricLoader.getInstance().getConfigDir().resolve("skinrestorer"))); } diff --git a/src/main/java/net/lionarius/skinrestorer/SkinResult.java b/common/src/main/java/net/lionarius/skinrestorer/SkinResult.java similarity index 100% rename from src/main/java/net/lionarius/skinrestorer/SkinResult.java rename to common/src/main/java/net/lionarius/skinrestorer/SkinResult.java diff --git a/src/main/java/net/lionarius/skinrestorer/SkinStorage.java b/common/src/main/java/net/lionarius/skinrestorer/SkinStorage.java similarity index 100% rename from src/main/java/net/lionarius/skinrestorer/SkinStorage.java rename to common/src/main/java/net/lionarius/skinrestorer/SkinStorage.java diff --git a/src/main/java/net/lionarius/skinrestorer/command/SkinCommand.java b/common/src/main/java/net/lionarius/skinrestorer/command/SkinCommand.java similarity index 100% rename from src/main/java/net/lionarius/skinrestorer/command/SkinCommand.java rename to common/src/main/java/net/lionarius/skinrestorer/command/SkinCommand.java diff --git a/src/main/java/net/lionarius/skinrestorer/enums/SkinVariant.java b/common/src/main/java/net/lionarius/skinrestorer/enums/SkinVariant.java similarity index 100% rename from src/main/java/net/lionarius/skinrestorer/enums/SkinVariant.java rename to common/src/main/java/net/lionarius/skinrestorer/enums/SkinVariant.java diff --git a/src/main/java/net/lionarius/skinrestorer/mixin/CommandManagerMixin.java b/common/src/main/java/net/lionarius/skinrestorer/mixin/CommandManagerMixin.java similarity index 100% rename from src/main/java/net/lionarius/skinrestorer/mixin/CommandManagerMixin.java rename to common/src/main/java/net/lionarius/skinrestorer/mixin/CommandManagerMixin.java diff --git a/src/main/java/net/lionarius/skinrestorer/mixin/PlayerManagerMixin.java b/common/src/main/java/net/lionarius/skinrestorer/mixin/PlayerManagerMixin.java similarity index 100% rename from src/main/java/net/lionarius/skinrestorer/mixin/PlayerManagerMixin.java rename to common/src/main/java/net/lionarius/skinrestorer/mixin/PlayerManagerMixin.java diff --git a/src/main/java/net/lionarius/skinrestorer/mixin/ServerLoginNetworkHandlerMixin.java b/common/src/main/java/net/lionarius/skinrestorer/mixin/ServerLoginNetworkHandlerMixin.java similarity index 100% rename from src/main/java/net/lionarius/skinrestorer/mixin/ServerLoginNetworkHandlerMixin.java rename to common/src/main/java/net/lionarius/skinrestorer/mixin/ServerLoginNetworkHandlerMixin.java diff --git a/src/main/java/net/lionarius/skinrestorer/util/FileUtils.java b/common/src/main/java/net/lionarius/skinrestorer/util/FileUtils.java similarity index 100% rename from src/main/java/net/lionarius/skinrestorer/util/FileUtils.java rename to common/src/main/java/net/lionarius/skinrestorer/util/FileUtils.java diff --git a/src/main/java/net/lionarius/skinrestorer/util/JsonUtils.java b/common/src/main/java/net/lionarius/skinrestorer/util/JsonUtils.java similarity index 100% rename from src/main/java/net/lionarius/skinrestorer/util/JsonUtils.java rename to common/src/main/java/net/lionarius/skinrestorer/util/JsonUtils.java diff --git a/src/main/java/net/lionarius/skinrestorer/util/PlayerUtils.java b/common/src/main/java/net/lionarius/skinrestorer/util/PlayerUtils.java similarity index 100% rename from src/main/java/net/lionarius/skinrestorer/util/PlayerUtils.java rename to common/src/main/java/net/lionarius/skinrestorer/util/PlayerUtils.java diff --git a/src/main/java/net/lionarius/skinrestorer/util/StringUtils.java b/common/src/main/java/net/lionarius/skinrestorer/util/StringUtils.java similarity index 100% rename from src/main/java/net/lionarius/skinrestorer/util/StringUtils.java rename to common/src/main/java/net/lionarius/skinrestorer/util/StringUtils.java diff --git a/src/main/java/net/lionarius/skinrestorer/util/TranslationUtils.java b/common/src/main/java/net/lionarius/skinrestorer/util/TranslationUtils.java similarity index 100% rename from src/main/java/net/lionarius/skinrestorer/util/TranslationUtils.java rename to common/src/main/java/net/lionarius/skinrestorer/util/TranslationUtils.java diff --git a/src/main/java/net/lionarius/skinrestorer/util/WebUtils.java b/common/src/main/java/net/lionarius/skinrestorer/util/WebUtils.java similarity index 100% rename from src/main/java/net/lionarius/skinrestorer/util/WebUtils.java rename to common/src/main/java/net/lionarius/skinrestorer/util/WebUtils.java diff --git a/src/main/resources/skinrestorer.mixins.json b/common/src/main/resources/skinrestorer.mixins.json similarity index 100% rename from src/main/resources/skinrestorer.mixins.json rename to common/src/main/resources/skinrestorer.mixins.json diff --git a/fabric/build.gradle b/fabric/build.gradle new file mode 100644 index 0000000..4119e23 --- /dev/null +++ b/fabric/build.gradle @@ -0,0 +1,49 @@ +plugins { + id 'com.github.johnrengelman.shadow' +} + +architectury { + platformSetupLoomIde() + fabric() +} + +configurations { + common { + canBeResolved = true + canBeConsumed = false + } + compileClasspath.extendsFrom common + runtimeClasspath.extendsFrom common + developmentFabric.extendsFrom common + + // Files in this configuration will be bundled into your mod using the Shadow plugin. + // Don't use the `shadow` configuration from the plugin itself as it's meant for excluding files. + shadowBundle { + canBeResolved = true + canBeConsumed = false + } +} + +dependencies { + modImplementation "net.fabricmc:fabric-loader:$rootProject.fabric_loader_version" + + common(project(path: ':common', configuration: 'namedElements')) { transitive false } + shadowBundle project(path: ':common', configuration: 'transformProductionFabric') +} + +processResources { + inputs.property 'version', project.version + + filesMatching('fabric.mod.json') { + expand version: project.version + } +} + +shadowJar { + configurations = [project.configurations.shadowBundle] + archiveClassifier = 'dev-shadow' +} + +remapJar { + input.set shadowJar.archiveFile +} diff --git a/fabric/src/main/java/net/lionarius/skinrestorer/fabric/SkinRestorerFabric.java b/fabric/src/main/java/net/lionarius/skinrestorer/fabric/SkinRestorerFabric.java new file mode 100644 index 0000000..a2d6f2f --- /dev/null +++ b/fabric/src/main/java/net/lionarius/skinrestorer/fabric/SkinRestorerFabric.java @@ -0,0 +1,11 @@ +package net.lionarius.skinrestorer.fabric; + +import net.fabricmc.api.DedicatedServerModInitializer; +import net.lionarius.skinrestorer.SkinRestorer; + +public final class SkinRestorerFabric implements DedicatedServerModInitializer { + @Override + public void onInitializeServer() { + SkinRestorer.onInitialize(); + } +} diff --git a/src/main/resources/fabric.mod.json b/fabric/src/main/resources/fabric.mod.json similarity index 88% rename from src/main/resources/fabric.mod.json rename to fabric/src/main/resources/fabric.mod.json index e30ec88..6b65a31 100644 --- a/src/main/resources/fabric.mod.json +++ b/fabric/src/main/resources/fabric.mod.json @@ -16,7 +16,7 @@ "environment": "server", "entrypoints": { "server": [ - "net.lionarius.skinrestorer.SkinRestorer" + "net.lionarius.skinrestorer.fabric.SkinRestorer" ] }, "mixins": [ @@ -24,6 +24,6 @@ ], "depends": { "fabricloader": ">=0.15.10", - "minecraft": "*" + "minecraft": ">=1.21" } } diff --git a/gradle.properties b/gradle.properties index b6b0a39..04c6198 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,18 +2,25 @@ org.gradle.jvmargs=-Xmx1G org.gradle.parallel=true -# Fabric Properties -# check these on https://fabricmc.net/versions.html -minecraft_version=1.21 -yarn_mappings=1.21+build.2 -loader_version=0.15.11 - # Mod Properties mod_version=1.2.6 +minecraft_version=1.21 +enabled_platforms = fabric,neoforge maven_group=net.lionarius -archive_name=skin-restorer +archives_name=skin-restorer capitalized_name=SkinRestorer +# Mappings +yarn_mappings=1.21+build.4 +yarn_mappings_patch_neoforge_version = 1.21+build.4 + +# Fabric Properties +# check these on https://fabricmc.net/versions.html +fabric_loader_version=0.15.11 + +# NeoForge +neoforge_loader_version=21.0.0-beta + # Modrinth modrinth_id=ghrZDhGW modrinth_game_versions=1.21 diff --git a/neoforge/build.gradle b/neoforge/build.gradle new file mode 100644 index 0000000..bca3388 --- /dev/null +++ b/neoforge/build.gradle @@ -0,0 +1,56 @@ +plugins { + id 'com.github.johnrengelman.shadow' +} + +architectury { + platformSetupLoomIde() + neoForge() +} + +configurations { + common { + canBeResolved = true + canBeConsumed = false + } + compileClasspath.extendsFrom common + runtimeClasspath.extendsFrom common + developmentNeoForge.extendsFrom common + + // Files in this configuration will be bundled into your mod using the Shadow plugin. + // Don't use the `shadow` configuration from the plugin itself as it's meant for excluding files. + shadowBundle { + canBeResolved = true + canBeConsumed = false + } +} + +repositories { + maven { + name = 'NeoForged' + url = 'https://maven.neoforged.net/releases' + } +} + +dependencies { + neoForge "net.neoforged:neoforge:$rootProject.neoforge_loader_version" + + common(project(path: ':common', configuration: 'namedElements')) { transitive false } + shadowBundle project(path: ':common', configuration: 'transformProductionNeoForge') +} + +processResources { + inputs.property 'version', project.version + + filesMatching('META-INF/neoforge.mods.toml') { + expand version: project.version + } +} + +shadowJar { + configurations = [project.configurations.shadowBundle] + archiveClassifier = 'dev-shadow' +} + +remapJar { + input.set shadowJar.archiveFile +} diff --git a/neoforge/gradle.properties b/neoforge/gradle.properties new file mode 100644 index 0000000..2e6ed76 --- /dev/null +++ b/neoforge/gradle.properties @@ -0,0 +1 @@ +loom.platform = neoforge diff --git a/neoforge/src/main/java/net/lionarius/skinrestorer/neoforge/SkinRestorerNeoForge.java b/neoforge/src/main/java/net/lionarius/skinrestorer/neoforge/SkinRestorerNeoForge.java new file mode 100644 index 0000000..cef294d --- /dev/null +++ b/neoforge/src/main/java/net/lionarius/skinrestorer/neoforge/SkinRestorerNeoForge.java @@ -0,0 +1,12 @@ +package net.lionarius.skinrestorer.neoforge; + +import net.lionarius.skinrestorer.SkinRestorer; +import net.neoforged.fml.common.Mod; + +@Mod(SkinRestorer.MOD_ID) +public final class SkinRestorerNeoForge { + + public SkinRestorerNeoForge() { + SkinRestorer.onInitialize(); + } +} diff --git a/neoforge/src/main/resources/META-INF/neoforge.mods.toml b/neoforge/src/main/resources/META-INF/neoforge.mods.toml new file mode 100644 index 0000000..c3f516b --- /dev/null +++ b/neoforge/src/main/resources/META-INF/neoforge.mods.toml @@ -0,0 +1,31 @@ +modLoader = "javafml" +loaderVersion = "[2,)" +issueTrackerURL = "https://github.com/Suiranoil/SkinRestorer/issues" +license = "MIT" + +[[mods]] +modId = "skinrestorer" +version = "${version}" +displayName = "Skin Restorer" +authors = "Lionarius" +displayURL = "https://modrinth.com/mod/skinrestorer" +description = ''' +A server-side mod for restoring skins on offline servers. +''' + +[[dependencies.skinrestorer]] +modId = "neoforge" +type = "required" +versionRange = "[21.0,)" +ordering = "NONE" +side = "SERVER" + +[[dependencies.skinrestorer]] +modId = "minecraft" +type = "required" +versionRange = "[1.21,)" +ordering = "NONE" +side = "SERVER" + +[[mixins]] +config = "skinrestorer.mixins.json" diff --git a/settings.gradle b/settings.gradle index bbcf4ff..24afc28 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,12 +1,24 @@ pluginManagement { repositories { + maven { + name = 'Architectury' + url = 'https://maven.architectury.dev/' + } maven { name = 'Fabric' url = 'https://maven.fabricmc.net/' } + maven { + name = 'Forge' + url = 'https://files.minecraftforge.net/maven/' + } mavenCentral() gradlePluginPortal() } } rootProject.name = "skin-restorer" + +include 'common' +include 'fabric' +include 'neoforge'